/*
* Copyright (C) Hisilicon Technologies Co., Ltd. 2012-2019. All rights reserved.
* Description:
* Author: Hisilicon multimedia software group
* Create: 2011/06/28
*/

#ifndef __imx214_CMOS_EX_H_
#define __imx214_CMOS_EX_H_

#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif

static const ISP_CMOS_DPC_S g_stCmosDpc = {
    {0, 0, 0, 152, 160, 180, 180, 180, 190, 180, 152, 152, 152, 152, 152, 152}, /* au16Strength[16] */
    {0, 0, 0,   0,  0, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50}, /* au16BlendRatio[16] */
};

#ifdef CONFIG_HI_ISP_CR_SUPPORT
static const ISP_CMOS_GE_S g_stIspGe = {
    /* For GE */
    0,    /* bEnable */
    9,    /* u8Slope */
    9,    /* u8SensiSlope */
    300,  /* u16SensiThr */
    {300,  300,  300,  300,  310,  310,  310,  310,  320,  320,  320,  320,  330,  330,  330,  330}, /* au16Threshold[ISP_AUTO_ISO_STRENGTH_NUM] */
    {128,  128,  128,  128,  129,  129,  129,  129,  130,  130,  130,  130,  131,  131,  131,  131}, /* au16Strength[ISP_AUTO_ISO_STRENGTH_NUM] */
    {1024, 1024, 1024, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048} /* au16NpOffset[ISP_AUTO_ISO_STRENGTH_NUM] */
};

static const ISP_CMOS_GE_S g_stIspWdrGe = {
    /* For GE */
    0,    /* bEnable */
    9,    /* u8Slope */
    9,    /* u8SensiSlope */
    300, /* u16SensiThr */
    { 300,  300,  300,  300,  310,  310,  310,  310,  320,  320,  320,  320,  330,  330,  330,  330}, /* au16Threshold[ISP_AUTO_ISO_STRENGTH_NUM] */
    { 128,  128,  128,  128,  129,  129,  129,  129,  130,  130,  130,  130,  131,  131,  131,  131}, /* au16Strength[ISP_AUTO_ISO_STRENGTH_NUM] */
    {1024, 1024, 1024, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048} /* au16NpOffset[ISP_AUTO_ISO_STRENGTH_NUM] */
};
#endif

static const ISP_CMOS_DEMOSAIC_S g_stIspDemosaic = {
    1,    // bEnable
    /* au8NonDirStr */
    {64, 64, 64, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48},
    /* au8NonDirMFDetailEhc */
    {48, 48, 40, 40, 30, 30, 30, 30, 22, 16, 16, 16, 16, 16, 16, 16},
    /* au8NonDirHFDetailEhc */
    {0, 0, 1, 2, 3, 4, 5, 5, 5, 5, 5, 7, 7, 7, 7, 7},
    /* au8DetailSmoothRange */
    {2, 2, 2, 2, 2, 2, 3, 4, 5, 5, 7, 7, 7, 7, 7, 7},
};

static const ISP_CMOS_DEMOSAIC_S g_stIspDemosaicWdr = {
    1,    // bEnable
    /* au8NonDirStr */
    {64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64},
    /* au8NonDirMFDetailEhc */
    {55, 55, 50, 45, 40, 35, 30, 25, 22, 16, 16, 16, 16, 16, 16, 16},
    /* au8NonDirHFDetailEhc */
    {0, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, 5, 5, 5},
    /* au8DetailSmoothRange */
    {3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 7, 7, 7, 7, 7, 7},
};

static const ISP_CMOS_ANTIFALSECOLOR_S g_stIspAntiFalseColor = {
    1,    /* bEnable */
    {10, 10, 8, 8, 7, 7, 7, 6, 6, 6, 5, 4, 3, 2, 1, 0}, /* au8AntiFalseColorThreshold */
    {8, 8, 8, 8, 7, 7, 7, 6, 6, 6, 5, 4, 3, 2, 1, 0}, /* au8AntiFalseColorStrength */
};

static const ISP_CMOS_ANTIFALSECOLOR_S g_stIspWdrAntiFalseColor = {
    1,    /* bEnable */
    {4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 1, 0}, /* au8AntiFalseColorThreshold */
    {4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 1, 0}, /* au8AntiFalseColorStrength */
};

/* BAYER NR */
static ISP_CMOS_NOISE_CALIBRATION_S g_stIspNoiseCalibration = {
    10,     // Calibration Lut Num
    /*************Calibration LUT Table*************/
    {
        {100.000000f,   0.025472f,  0.008370f},
        {200.000000f,   0.051026f,  0.020051f},
        {400.000000f,   0.100380f,  0.002657f},
        {800.000000f,   0.199705f,  0.024892f},
        {1600.000000f,  0.397814f,  0.118102f},
        {3200.000000f,  0.792300f,  0.443096f},
        {6400.000000f,  1.554968f,  2.329596f},
        {12800.000000f, 3.029946f,  11.217048f},
        {25600.000000f, 5.870243f,  45.309135f},
        {51200.000000f, 10.794330f, 187.701797f}
    }
    /*********************************************/
};
static const ISP_CMOS_BAYERNR_S g_stIspBayerNr = {
    1,      // bEnable
    0,      // bBnrMonoSensorEn
    0,      // bNrLscEnable
    96,     // u8BnrLscMaxGain
    256,    // u16BnrLscCmpStrength
    {65, 65, 65, 65, 65, 65, 60, 55, 48, 46, 30, 16, 16, 16, 16, 16}, // FineStr
    {
        {0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3}, // ChromaStrR
        {0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}, // ChromaStrGr
        {0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}, // ChromaStrGb
        {0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3}  // ChromaStrB
    },
    {0, 0, 0, 0},                // WDRFrameStr
    {0, 0, 0, 0},                // FusionFrameStr
    {
        {120, 140, 180, 200, 240, 280, 300, 320, 340, 380, 340, 340, 300, 300, 280, 280},    // CoarseStrR
        {108, 110, 115, 125, 135, 160, 180, 180, 180, 180, 160, 160, 148, 148, 138, 138},    // CoarseStrGR
        {108, 110, 115, 125, 135, 160, 180, 180, 180, 180, 160, 160, 148, 148, 138, 138},    // CoarseStrGB
        {120, 140, 180, 200, 240, 280, 300, 300, 340, 380, 340, 340, 300, 300, 280, 280}     // CoarseStrB
    },
    {30, 30, 30, 20, 20, 20, 22, 25, 25, 30, 30, 30, 30, 30, 30, 30}, // lutCoringWeight
    {
        10, 20, 40, 80, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100
    },   // CoringRatio
};

static const ISP_CMOS_BAYERNR_S g_stIspBayerNrWdr2To1 = {
    1,      // bEnable
    0,      // bBnrMonoSensorEn
    0,      // bNrLscEnable
    96,     // u8BnrLscMaxGain
    256,    // u16BnrLscCmpStrength
    {100, 90, 80, 70, 60, 50, 40, 30, 20, 16, 16, 16, 16, 16, 16, 16},     // FineStr
    {
        {0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3}, // ChromaStrR
        {0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}, // ChromaStrGr
        {0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}, // ChromaStrGb
        {0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3}  // ChromaStrB
    },
    {16, 6, 12, 0},              // WDRFrameStr
    {16, 6, 0, 0},               // FusionCoarseStr
    {
        {120, 125, 130, 135, 140, 145, 150, 155, 160, 160, 160, 160, 160, 160, 160, 160},    // CoarseStrR
        {100, 105, 110, 115, 120, 125, 130, 135, 140, 140, 140, 140, 140, 140, 140, 140},    // CoarseStrGR
        {100, 105, 110, 115, 120, 125, 130, 135, 140, 140, 140, 140, 140, 140, 140, 140},    // CoarseStrGB
        {120, 125, 130, 135, 140, 145, 150, 155, 160, 160, 160, 160, 160, 160, 160, 160},     // CoarseStrB
    },
    {25, 25, 25, 25, 25, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30},     // lutCoringWeight
    {
        10, 20, 40, 80, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, \
        100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100
    },  // coring ratio
};

static const ISP_CMOS_DETAIL_S g_stIspDetail = {
    {
        0,      // bEnable
        {256, 256, 200, 170, 150, 100, 60, 60, 60, 80, 80, 80, 80, 50, 50, 100, 100},     // au16LumaGainLut[HI_ISP_DE_LUMA_GAIN_LUT_N]
        0,          // enOpType
        {
            {150, 150, 150, 150, 170, 190, 190, 150, 150, 150, 150, 150, 150, 150, 150, 150}, // au16GlobalGain;
            {9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9},  // au16GainLF;
            {9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9,   9},  // au16GainHF;
        },
        {
            150,  // u16GlobalGain;
            9,     // u16GainLF;
            9     // u16GainHF;
        }
    }
};

static const ISP_CMOS_DETAIL_S g_stIspDetailWdr2To1 = {
    {
        0,      // bEnable
        {256, 256, 200, 170, 150, 100, 60, 60, 60, 80, 80, 80, 80, 50, 50, 100, 100},     // au16LumaGainLut[HI_ISP_DE_LUMA_GAIN_LUT_N]
        0,          // enOpType
        {
            {150, 150, 150, 150, 170, 190, 190, 150, 150, 150, 150, 150, 150, 150, 150, 150}, // au16GlobalGain;
            {9,   9,   9,   9,   8,   8,   8,   8,   8,   8,   8,   8,   8,   8,   8,   8 },  // au16GainLF;
            {9,   9,   9,   9,   12,  12,  12,  12,  12,  12,  12,  12,  12,  12,  12,  12 },  // au16GainHF;
        },
        {
            150,  // u16GlobalGain;
            9,     // u16GainLF;
            9     // u16GainHF;
        }
    }
};

static const ISP_CMOS_LDCI_S g_stIspLdci = {
    /* bEnable */
    1,
    /* u8GaussLPFSigma */
    20,

    /* au8HePosWgt */
    {120, 100,  80,  60,  50,  40,  20,   8,   6,   0,   0,   0,   0,   0,   0,   0},
    /* au8HePosSigma */
    { 90,  80,  60,  50,  40,  30,  20,  20,  12,   8,   6,   2,   1,   1,   1,   1},
    /* au8HePosMean */
    {  0,   0,   0,  30,  30,  30,  30,   0,   0,   0,   0,   0,   0,   0,   0,   0},

    /* au8HeNegWgt */
    { 32,  32,  42,  54,  64,  24,  12,   8,   6,   0,   0,   0,   0,   0,   0,   0},
    /* au8HeNegSigma */
    { 46,  46,  48,  48,  48,  72,  64,  54,  36,   8,   6,   2,   1,   1,   1,   1},
    /* au8HeNegMean */
    {128, 128, 140, 160, 180, 180, 180, 180, 180,   0,   0,   0,   0,   0,   0,   0},

    /* au16BlcCtrl */
    { 5,   5,   5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5}
};

static const ISP_CMOS_LDCI_S g_stIspWdrLdci = {
    /* bEnable */
    1,
    /* u8GaussLPFSigma */
    20,
    /* au8HePosWgt */
    {60,  60,  60,  50,  40,  30,  20,   8,   6,   0,   0,   0,   0,   0,   0,   0},
    /* au8HePosSigma */
    {80,  70,  60,  50,  40,  30,  20,  20,  12,   8,   6,   2,   1,   1,   1,   1},
    /* au8HePosMean */
    {50,  50,  40,  30,  30,  30,  30,   0,   0,   0,   0,   0,   0,   0,   0,   0},

    /* au8HeNegWgt */
    {32,  32,  42,  54,  64,  24,  12,   8,   6,   0,   0,   0,   0,   0,   0,   0},
    /* au8HeNegSigma */
    {46,  46,  48,  48,  48,  72,  64,  54,  36,   8,   6,   2,   1,   1,   1,   1},
    /* au8HeNegMean */
    {128, 128, 140, 160, 180, 180, 180, 180, 180,  0,   0,   0,   0,   0,   0,   0},
    /* au16BlcCtrl */
    { 5,   5,   5,   5,   5,   5,   5,   5,   5,   5,   5,   5,   5,   5,   5,   5}
};

static const ISP_CMOS_GAMMA_S g_stIspGamma = {
    /* au16Gamma[GAMMA_EXT_NODE_NUMBER] */
    {
           0,   32,   44,   56,   68,   79,   91,  103,  115,  127,  139,  151,  163,  175,  187,  199,  211,  223,  235,  247,  259,  271,  283,  295,  307,  318,  330,  342,  354,  366,  377,  389,
         401,  413,  424,  436,  448,  459,  471,  482,  494,  506,  517,  528,  540,  551,  563,  574,  585,  596,  608,  619,  630,  641,  652,  663,  674,  685,  696,  707,  718,  728,  739,  750,
         760,  771,  781,  792,  802,  813,  823,  833,  843,  854,  864,  874,  884,  894,  904,  914,  923,  933,  943,  953,  962,  972,  981,  991, 1000, 1010, 1019, 1028, 1037, 1046, 1056, 1065,
        1074, 1083, 1092, 1101, 1109, 1118, 1127, 1136, 1144, 1153, 1161, 1170, 1178, 1187, 1195, 1203, 1212, 1220, 1228, 1236, 1244, 1253, 1261, 1269, 1277, 1284, 1292, 1300, 1308, 1316, 1323, 1331,
        1339, 1346, 1354, 1361, 1369, 1376, 1384, 1391, 1398, 1406, 1413, 1420, 1427, 1434, 1442, 1449, 1456, 1463, 1470, 1477, 1484, 1491, 1497, 1504, 1511, 1518, 1525, 1531, 1538, 1545, 1551, 1558,
        1565, 1571, 1578, 1584, 1591, 1597, 1604, 1610, 1616, 1623, 1629, 1635, 1642, 1648, 1654, 1660, 1667, 1673, 1679, 1685, 1691, 1697, 1703, 1709, 1716, 1722, 1728, 1734, 1739, 1745, 1751, 1757,
        1763, 1769, 1775, 1781, 1786, 1792, 1798, 1804, 1810, 1815, 1821, 1827, 1832, 1838, 1844, 1849, 1855, 1860, 1866, 1872, 1877, 1883, 1888, 1894, 1899, 1904, 1910, 1915, 1921, 1926, 1931, 1937,
        1942, 1947, 1953, 1958, 1963, 1969, 1974, 1979, 1984, 1989, 1995, 2000, 2005, 2010, 2015, 2020, 2025, 2030, 2035, 2040, 2045, 2050, 2055, 2060, 2065, 2070, 2075, 2080, 2085, 2090, 2094, 2099,
        2104, 2109, 2114, 2118, 2123, 2128, 2132, 2137, 2142, 2146, 2151, 2156, 2160, 2165, 2170, 2174, 2179, 2183, 2188, 2192, 2197, 2201, 2206, 2210, 2214, 2219, 2223, 2228, 2232, 2236, 2241, 2245,
        2249, 2253, 2258, 2262, 2266, 2270, 2275, 2279, 2283, 2287, 2291, 2296, 2300, 2304, 2308, 2312, 2316, 2320, 2324, 2328, 2332, 2336, 2340, 2344, 2348, 2352, 2356, 2360, 2364, 2368, 2372, 2376,
        2380, 2384, 2388, 2391, 2395, 2399, 2403, 2407, 2411, 2414, 2418, 2422, 2426, 2430, 2433, 2437, 2441, 2445, 2448, 2452, 2456, 2459, 2463, 2467, 2470, 2474, 2478, 2481, 2485, 2489, 2492, 2496,
        2500, 2503, 2507, 2510, 2514, 2517, 2521, 2525, 2528, 2532, 2535, 2539, 2542, 2546, 2549, 2553, 2557, 2560, 2564, 2567, 2571, 2574, 2578, 2581, 2585, 2588, 2591, 2595, 2598, 2602, 2605, 2609,
        2612, 2616, 2619, 2623, 2626, 2629, 2633, 2636, 2640, 2643, 2646, 2650, 2653, 2657, 2660, 2663, 2667, 2670, 2673, 2677, 2680, 2684, 2687, 2690, 2694, 2697, 2700, 2704, 2707, 2710, 2713, 2717,
        2720, 2723, 2727, 2730, 2733, 2736, 2740, 2743, 2746, 2749, 2753, 2756, 2759, 2762, 2765, 2769, 2772, 2775, 2778, 2781, 2784, 2788, 2791, 2794, 2797, 2800, 2803, 2806, 2809, 2812, 2815, 2819,
        2822, 2825, 2828, 2831, 2834, 2837, 2840, 2843, 2846, 2849, 2852, 2855, 2858, 2861, 2864, 2867, 2870, 2873, 2876, 2878, 2881, 2884, 2887, 2890, 2893, 2896, 2899, 2902, 2905, 2907, 2910, 2913,
        2916, 2919, 2922, 2925, 2927, 2930, 2933, 2936, 2939, 2942, 2944, 2947, 2950, 2953, 2956, 2959, 2961, 2964, 2967, 2970, 2973, 2975, 2978, 2981, 2984, 2987, 2989, 2992, 2995, 2998, 3001, 3003,
        3006, 3009, 3012, 3014, 3017, 3020, 3023, 3026, 3028, 3031, 3034, 3037, 3039, 3042, 3045, 3048, 3051, 3053, 3056, 3059, 3062, 3064, 3067, 3070, 3073, 3075, 3078, 3081, 3084, 3086, 3089, 3092,
        3095, 3098, 3100, 3103, 3106, 3109, 3111, 3114, 3117, 3119, 3122, 3125, 3128, 3130, 3133, 3136, 3139, 3141, 3144, 3147, 3149, 3152, 3155, 3158, 3160, 3163, 3166, 3168, 3171, 3174, 3176, 3179,
        3182, 3184, 3187, 3190, 3192, 3195, 3198, 3200, 3203, 3206, 3208, 3211, 3213, 3216, 3219, 3221, 3224, 3226, 3229, 3232, 3234, 3237, 3239, 3242, 3244, 3247, 3250, 3252, 3255, 3257, 3260, 3262,
        3265, 3267, 3270, 3272, 3275, 3277, 3280, 3282, 3285, 3287, 3290, 3292, 3295, 3297, 3300, 3302, 3305, 3307, 3310, 3312, 3314, 3317, 3319, 3322, 3324, 3326, 3329, 3331, 3334, 3336, 3338, 3341,
        3343, 3345, 3348, 3350, 3353, 3355, 3357, 3360, 3362, 3364, 3366, 3369, 3371, 3373, 3376, 3378, 3380, 3383, 3385, 3387, 3389, 3392, 3394, 3396, 3398, 3401, 3403, 3405, 3407, 3409, 3412, 3414,
        3416, 3418, 3420, 3423, 3425, 3427, 3429, 3431, 3434, 3436, 3438, 3440, 3442, 3444, 3446, 3449, 3451, 3453, 3455, 3457, 3459, 3461, 3463, 3466, 3468, 3470, 3472, 3474, 3476, 3478, 3480, 3482,
        3484, 3486, 3489, 3491, 3493, 3495, 3497, 3499, 3501, 3503, 3505, 3507, 3509, 3511, 3513, 3515, 3517, 3519, 3521, 3523, 3525, 3527, 3529, 3531, 3533, 3535, 3537, 3539, 3542, 3544, 3546, 3548,
        3550, 3552, 3554, 3556, 3558, 3560, 3562, 3563, 3565, 3567, 3569, 3571, 3573, 3575, 3577, 3579, 3581, 3583, 3585, 3587, 3589, 3591, 3593, 3595, 3597, 3599, 3601, 3603, 3605, 3607, 3609, 3611,
        3613, 3615, 3617, 3619, 3621, 3622, 3624, 3626, 3628, 3630, 3632, 3634, 3636, 3638, 3640, 3642, 3644, 3646, 3648, 3649, 3651, 3653, 3655, 3657, 3659, 3661, 3663, 3665, 3667, 3669, 3671, 3672,
        3674, 3676, 3678, 3680, 3682, 3684, 3686, 3688, 3690, 3691, 3693, 3695, 3697, 3699, 3701, 3703, 3705, 3707, 3708, 3710, 3712, 3714, 3716, 3718, 3720, 3722, 3723, 3725, 3727, 3729, 3731, 3733,
        3735, 3737, 3738, 3740, 3742, 3744, 3746, 3748, 3750, 3751, 3753, 3755, 3757, 3759, 3761, 3763, 3764, 3766, 3768, 3770, 3772, 3774, 3776, 3777, 3779, 3781, 3783, 3785, 3787, 3789, 3790, 3792,
        3794, 3796, 3798, 3800, 3802, 3804, 3805, 3807, 3809, 3811, 3813, 3815, 3817, 3818, 3820, 3822, 3824, 3826, 3828, 3830, 3831, 3833, 3835, 3837, 3839, 3841, 3843, 3844, 3846, 3848, 3850, 3852,
        3854, 3856, 3858, 3859, 3861, 3863, 3865, 3867, 3869, 3871, 3873, 3874, 3876, 3878, 3880, 3882, 3884, 3886, 3887, 3889, 3891, 3893, 3895, 3897, 3899, 3901, 3902, 3904, 3906, 3908, 3910, 3912,
        3914, 3916, 3918, 3919, 3921, 3923, 3925, 3927, 3929, 3931, 3933, 3934, 3936, 3938, 3940, 3942, 3944, 3946, 3948, 3949, 3951, 3953, 3955, 3957, 3959, 3961, 3963, 3965, 3966, 3968, 3970, 3972,
        3974, 3976, 3978, 3980, 3981, 3983, 3985, 3987, 3989, 3991, 3993, 3995, 3997, 3998, 4000, 4002, 4004, 4006, 4008, 4010, 4012, 4014, 4015, 4017, 4019, 4021, 4023, 4025, 4027, 4029, 4030, 4032,
        4034, 4036, 4038, 4040, 4042, 4044, 4046, 4047, 4049, 4051, 4053, 4055, 4057, 4059, 4061, 4062, 4064, 4066, 4068, 4070, 4072, 4074, 4076, 4078, 4079, 4081, 4083, 4085, 4087, 4089, 4091, 4093, 4095
    }
};

static const ISP_CMOS_GAMMA_S g_stIspGammaFSWDR = {
#if 1
    {
           0,   32,   44,   56,   68,   79,   91,  103,  115,  127,  139,  151,  163,  175,  187,  199,  211,  223,  235,  247,  259,  271,  283,  295,  307,  318,  330,  342,  354,  366,  377,  389,
         401,  413,  424,  436,  448,  459,  471,  482,  494,  506,  517,  528,  540,  551,  563,  574,  585,  596,  608,  619,  630,  641,  652,  663,  674,  685,  696,  707,  718,  728,  739,  750,
         760,  771,  781,  792,  802,  813,  823,  833,  843,  854,  864,  874,  884,  894,  904,  914,  923,  933,  943,  953,  962,  972,  981,  991, 1000, 1010, 1019, 1028, 1037, 1046, 1056, 1065,
        1074, 1083, 1092, 1101, 1109, 1118, 1127, 1136, 1144, 1153, 1161, 1170, 1178, 1187, 1195, 1203, 1212, 1220, 1228, 1236, 1244, 1253, 1261, 1269, 1277, 1284, 1292, 1300, 1308, 1316, 1323, 1331,
        1339, 1346, 1354, 1361, 1369, 1376, 1384, 1391, 1398, 1406, 1413, 1420, 1427, 1434, 1442, 1449, 1456, 1463, 1470, 1477, 1484, 1491, 1497, 1504, 1511, 1518, 1525, 1531, 1538, 1545, 1551, 1558,
        1565, 1571, 1578, 1584, 1591, 1597, 1604, 1610, 1616, 1623, 1629, 1635, 1642, 1648, 1654, 1660, 1667, 1673, 1679, 1685, 1691, 1697, 1703, 1709, 1716, 1722, 1728, 1734, 1739, 1745, 1751, 1757,
        1763, 1769, 1775, 1781, 1786, 1792, 1798, 1804, 1810, 1815, 1821, 1827, 1832, 1838, 1844, 1849, 1855, 1860, 1866, 1872, 1877, 1883, 1888, 1894, 1899, 1904, 1910, 1915, 1921, 1926, 1931, 1937,
        1942, 1947, 1953, 1958, 1963, 1969, 1974, 1979, 1984, 1989, 1995, 2000, 2005, 2010, 2015, 2020, 2025, 2030, 2035, 2040, 2045, 2050, 2055, 2060, 2065, 2070, 2075, 2080, 2085, 2090, 2094, 2099,
        2104, 2109, 2114, 2118, 2123, 2128, 2132, 2137, 2142, 2146, 2151, 2156, 2160, 2165, 2170, 2174, 2179, 2183, 2188, 2192, 2197, 2201, 2206, 2210, 2214, 2219, 2223, 2228, 2232, 2236, 2241, 2245,
        2249, 2253, 2258, 2262, 2266, 2270, 2275, 2279, 2283, 2287, 2291, 2296, 2300, 2304, 2308, 2312, 2316, 2320, 2324, 2328, 2332, 2336, 2340, 2344, 2348, 2352, 2356, 2360, 2364, 2368, 2372, 2376,
        2380, 2384, 2388, 2391, 2395, 2399, 2403, 2407, 2411, 2414, 2418, 2422, 2426, 2430, 2433, 2437, 2441, 2445, 2448, 2452, 2456, 2459, 2463, 2467, 2470, 2474, 2478, 2481, 2485, 2489, 2492, 2496,
        2500, 2503, 2507, 2510, 2514, 2517, 2521, 2525, 2528, 2532, 2535, 2539, 2542, 2546, 2549, 2553, 2557, 2560, 2564, 2567, 2571, 2574, 2578, 2581, 2585, 2588, 2591, 2595, 2598, 2602, 2605, 2609,
        2612, 2616, 2619, 2623, 2626, 2629, 2633, 2636, 2640, 2643, 2646, 2650, 2653, 2657, 2660, 2663, 2667, 2670, 2673, 2677, 2680, 2684, 2687, 2690, 2694, 2697, 2700, 2704, 2707, 2710, 2713, 2717,
        2720, 2723, 2727, 2730, 2733, 2736, 2740, 2743, 2746, 2749, 2753, 2756, 2759, 2762, 2765, 2769, 2772, 2775, 2778, 2781, 2784, 2788, 2791, 2794, 2797, 2800, 2803, 2806, 2809, 2812, 2815, 2819,
        2822, 2825, 2828, 2831, 2834, 2837, 2840, 2843, 2846, 2849, 2852, 2855, 2858, 2861, 2864, 2867, 2870, 2873, 2876, 2878, 2881, 2884, 2887, 2890, 2893, 2896, 2899, 2902, 2905, 2907, 2910, 2913,
        2916, 2919, 2922, 2925, 2927, 2930, 2933, 2936, 2939, 2942, 2944, 2947, 2950, 2953, 2956, 2959, 2961, 2964, 2967, 2970, 2973, 2975, 2978, 2981, 2984, 2987, 2989, 2992, 2995, 2998, 3001, 3003,
        3006, 3009, 3012, 3014, 3017, 3020, 3023, 3026, 3028, 3031, 3034, 3037, 3039, 3042, 3045, 3048, 3051, 3053, 3056, 3059, 3062, 3064, 3067, 3070, 3073, 3075, 3078, 3081, 3084, 3086, 3089, 3092,
        3095, 3098, 3100, 3103, 3106, 3109, 3111, 3114, 3117, 3119, 3122, 3125, 3128, 3130, 3133, 3136, 3139, 3141, 3144, 3147, 3149, 3152, 3155, 3158, 3160, 3163, 3166, 3168, 3171, 3174, 3176, 3179,
        3182, 3184, 3187, 3190, 3192, 3195, 3198, 3200, 3203, 3206, 3208, 3211, 3213, 3216, 3219, 3221, 3224, 3226, 3229, 3232, 3234, 3237, 3239, 3242, 3244, 3247, 3250, 3252, 3255, 3257, 3260, 3262,
        3265, 3267, 3270, 3272, 3275, 3277, 3280, 3282, 3285, 3287, 3290, 3292, 3295, 3297, 3300, 3302, 3305, 3307, 3310, 3312, 3314, 3317, 3319, 3322, 3324, 3326, 3329, 3331, 3334, 3336, 3338, 3341,
        3343, 3345, 3348, 3350, 3353, 3355, 3357, 3360, 3362, 3364, 3366, 3369, 3371, 3373, 3376, 3378, 3380, 3383, 3385, 3387, 3389, 3392, 3394, 3396, 3398, 3401, 3403, 3405, 3407, 3409, 3412, 3414,
        3416, 3418, 3420, 3423, 3425, 3427, 3429, 3431, 3434, 3436, 3438, 3440, 3442, 3444, 3446, 3449, 3451, 3453, 3455, 3457, 3459, 3461, 3463, 3466, 3468, 3470, 3472, 3474, 3476, 3478, 3480, 3482,
        3484, 3486, 3489, 3491, 3493, 3495, 3497, 3499, 3501, 3503, 3505, 3507, 3509, 3511, 3513, 3515, 3517, 3519, 3521, 3523, 3525, 3527, 3529, 3531, 3533, 3535, 3537, 3539, 3542, 3544, 3546, 3548,
        3550, 3552, 3554, 3556, 3558, 3560, 3562, 3563, 3565, 3567, 3569, 3571, 3573, 3575, 3577, 3579, 3581, 3583, 3585, 3587, 3589, 3591, 3593, 3595, 3597, 3599, 3601, 3603, 3605, 3607, 3609, 3611,
        3613, 3615, 3617, 3619, 3621, 3622, 3624, 3626, 3628, 3630, 3632, 3634, 3636, 3638, 3640, 3642, 3644, 3646, 3648, 3649, 3651, 3653, 3655, 3657, 3659, 3661, 3663, 3665, 3667, 3669, 3671, 3672,
        3674, 3676, 3678, 3680, 3682, 3684, 3686, 3688, 3690, 3691, 3693, 3695, 3697, 3699, 3701, 3703, 3705, 3707, 3708, 3710, 3712, 3714, 3716, 3718, 3720, 3722, 3723, 3725, 3727, 3729, 3731, 3733,
        3735, 3737, 3738, 3740, 3742, 3744, 3746, 3748, 3750, 3751, 3753, 3755, 3757, 3759, 3761, 3763, 3764, 3766, 3768, 3770, 3772, 3774, 3776, 3777, 3779, 3781, 3783, 3785, 3787, 3789, 3790, 3792,
        3794, 3796, 3798, 3800, 3802, 3804, 3805, 3807, 3809, 3811, 3813, 3815, 3817, 3818, 3820, 3822, 3824, 3826, 3828, 3830, 3831, 3833, 3835, 3837, 3839, 3841, 3843, 3844, 3846, 3848, 3850, 3852,
        3854, 3856, 3858, 3859, 3861, 3863, 3865, 3867, 3869, 3871, 3873, 3874, 3876, 3878, 3880, 3882, 3884, 3886, 3887, 3889, 3891, 3893, 3895, 3897, 3899, 3901, 3902, 3904, 3906, 3908, 3910, 3912,
        3914, 3916, 3918, 3919, 3921, 3923, 3925, 3927, 3929, 3931, 3933, 3934, 3936, 3938, 3940, 3942, 3944, 3946, 3948, 3949, 3951, 3953, 3955, 3957, 3959, 3961, 3963, 3965, 3966, 3968, 3970, 3972,
        3974, 3976, 3978, 3980, 3981, 3983, 3985, 3987, 3989, 3991, 3993, 3995, 3997, 3998, 4000, 4002, 4004, 4006, 4008, 4010, 4012, 4014, 4015, 4017, 4019, 4021, 4023, 4025, 4027, 4029, 4030, 4032,
        4034, 4036, 4038, 4040, 4042, 4044, 4046, 4047, 4049, 4051, 4053, 4055, 4057, 4059, 4061, 4062, 4064, 4066, 4068, 4070, 4072, 4074, 4076, 4078, 4079, 4081, 4083, 4085, 4087, 4089, 4091, 4093, 4095
    }
#else
    /* 0.8gamma */
    {
        0, 23, 38, 52, 64, 76, 87, 97, 108, 118, 127, 137, 146, 155, 164, 172, 181, 189, 198, 206, 214, 222, 230, 238, 245, 253,
        260, 268, 275, 283, 290, 297, 304, 311, 319, 326, 332, 339, 346, 353, 360, 367, 373, 380, 386, 393, 400, 406, 413, 419,
        425, 432, 438, 444, 451, 457, 463, 469, 475, 482, 488, 494, 500, 506, 512, 518, 524, 530, 536, 542, 547, 553, 559, 565,
        571, 577, 582, 588, 594, 599, 605, 611, 616, 622, 628, 633, 639, 644, 650, 655, 661, 667, 672, 677, 683, 688, 694, 699,
        705, 710, 715, 721, 726, 731, 737, 742, 747, 753, 758, 763, 768, 774, 779, 784, 789, 794, 800, 805, 810, 815, 820, 825,
        830, 836, 841, 846, 851, 856, 861, 866, 871, 876, 881, 886, 891, 896, 901, 906, 911, 916, 921, 926, 931, 935, 940, 945,
        950, 955, 960, 965, 970, 974, 979, 984, 989, 994, 999, 1003, 1008, 1013, 1018, 1022, 1027, 1032, 1037, 1041, 1046, 1051,
        1056, 1060, 1065, 1070, 1074, 1079, 1084, 1088, 1093, 1098, 1102, 1107, 1112, 1116, 1121, 1126, 1130, 1135, 1139, 1144,
        1149, 1153, 1158, 1162, 1167, 1171, 1176, 1180, 1185, 1190, 1194, 1199, 1203, 1208, 1212, 1217, 1221, 1226, 1230, 1235,
        1239, 1243, 1248, 1252, 1257, 1261, 1266, 1270, 1275, 1279, 1283, 1288, 1292, 1297, 1301, 1305, 1310, 1314, 1319, 1323,
        1327, 1332, 1336, 1340, 1345, 1349, 1353, 1358, 1362, 1366, 1371, 1375, 1379, 1384, 1388, 1392, 1397, 1401, 1405, 1409,
        1414, 1418, 1422, 1427, 1431, 1435, 1439, 1444, 1448, 1452, 1456, 1461, 1465, 1469, 1473, 1477, 1482, 1486, 1490, 1494,
        1498, 1503, 1507, 1511, 1515, 1519, 1523, 1528, 1532, 1536, 1540, 1544, 1548, 1553, 1557, 1561, 1565, 1569, 1573, 1577,
        1582, 1586, 1590, 1594, 1598, 1602, 1606, 1610, 1614, 1618, 1623, 1627, 1631, 1635, 1639, 1643, 1647, 1651, 1655, 1659,
        1663, 1667, 1671, 1675, 1679, 1683, 1687, 1691, 1695, 1700, 1704, 1708, 1712, 1716, 1720, 1724, 1728, 1732, 1736, 1740,
        1744, 1748, 1752, 1755, 1759, 1763, 1767, 1771, 1775, 1779, 1783, 1787, 1791, 1795, 1799, 1803, 1807, 1811, 1815, 1819,
        1823, 1827, 1831, 1834, 1838, 1842, 1846, 1850, 1854, 1858, 1862, 1866, 1870, 1874, 1877, 1881, 1885, 1889, 1893, 1897,
        1901, 1905, 1908, 1912, 1916, 1920, 1924, 1928, 1932, 1935, 1939, 1943, 1947, 1951, 1955, 1959, 1962, 1966, 1970, 1974,
        1978, 1981, 1985, 1989, 1993, 1997, 2001, 2004, 2008, 2012, 2016, 2020, 2023, 2027, 2031, 2035, 2039, 2042, 2046, 2050,
        2054, 2057, 2061, 2065, 2069, 2072, 2076, 2080, 2084, 2088, 2091, 2095, 2099, 2103, 2106, 2110, 2114, 2117, 2121, 2125,
        2129, 2132, 2136, 2140, 2144, 2147, 2151, 2155, 2158, 2162, 2166, 2170, 2173, 2177, 2181, 2184, 2188, 2192, 2195, 2199,
        2203, 2207, 2210, 2214, 2218, 2221, 2225, 2229, 2232, 2236, 2240, 2243, 2247, 2251, 2254, 2258, 2262, 2265, 2269, 2273,
        2276, 2280, 2284, 2287, 2291, 2294, 2298, 2302, 2305, 2309, 2313, 2316, 2320, 2323, 2327, 2331, 2334, 2338, 2342, 2345,
        2349, 2352, 2356, 2360, 2363, 2367, 2370, 2374, 2378, 2381, 2385, 2388, 2392, 2396, 2399, 2403, 2406, 2410, 2413, 2417,
        2421, 2424, 2428, 2431, 2435, 2438, 2442, 2446, 2449, 2453, 2456, 2460, 2463, 2467, 2470, 2474, 2478, 2481, 2485, 2488,
        2492, 2495, 2499, 2502, 2506, 2509, 2513, 2516, 2520, 2524, 2527, 2531, 2534, 2538, 2541, 2545, 2548, 2552, 2555, 2559,
        2562, 2566, 2569, 2573, 2576, 2580, 2583, 2587, 2590, 2594, 2597, 2601, 2604, 2608, 2611, 2615, 2618, 2622, 2625, 2629,
        2632, 2636, 2639, 2642, 2646, 2649, 2653, 2656, 2660, 2663, 2667, 2670, 2674, 2677, 2681, 2684, 2687, 2691, 2694, 2698,
        2701, 2705, 2708, 2712, 2715, 2718, 2722, 2725, 2729, 2732, 2736, 2739, 2742, 2746, 2749, 2753, 2756, 2760, 2763, 2766,
        2770, 2773, 2777, 2780, 2784, 2787, 2790, 2794, 2797, 2801, 2804, 2807, 2811, 2814, 2818, 2821, 2824, 2828, 2831, 2835,
        2838, 2841, 2845, 2848, 2851, 2855, 2858, 2862, 2865, 2868, 2872, 2875, 2878, 2882, 2885, 2889, 2892, 2895, 2899, 2902,
        2905, 2909, 2912, 2916, 2919, 2922, 2926, 2929, 2932, 2936, 2939, 2942, 2946, 2949, 2952, 2956, 2959, 2962, 2966, 2969,
        2972, 2976, 2979, 2982, 2986, 2989, 2992, 2996, 2999, 3002, 3006, 3009, 3012, 3016, 3019, 3022, 3026, 3029, 3032, 3036,
        3039, 3042, 3046, 3049, 3052, 3055, 3059, 3062, 3065, 3069, 3072, 3075, 3079, 3082, 3085, 3088, 3092, 3095, 3098, 3102,
        3105, 3108, 3112, 3115, 3118, 3121, 3125, 3128, 3131, 3135, 3138, 3141, 3144, 3148, 3151, 3154, 3157, 3161, 3164, 3167,
        3170, 3174, 3177, 3180, 3184, 3187, 3190, 3193, 3197, 3200, 3203, 3206, 3210, 3213, 3216, 3219, 3223, 3226, 3229, 3232,
        3236, 3239, 3242, 3245, 3249, 3252, 3255, 3258, 3262, 3265, 3268, 3271, 3274, 3278, 3281, 3284, 3287, 3291, 3294, 3297,
        3300, 3303, 3307, 3310, 3313, 3316, 3320, 3323, 3326, 3329, 3332, 3336, 3339, 3342, 3345, 3348, 3352, 3355, 3358, 3361,
        3365, 3368, 3371, 3374, 3377, 3381, 3384, 3387, 3390, 3393, 3396, 3400, 3403, 3406, 3409, 3412, 3416, 3419, 3422, 3425,
        3428, 3432, 3435, 3438, 3441, 3444, 3447, 3451, 3454, 3457, 3460, 3463, 3466, 3470, 3473, 3476, 3479, 3482, 3485, 3489,
        3492, 3495, 3498, 3501, 3504, 3508, 3511, 3514, 3517, 3520, 3523, 3527, 3530, 3533, 3536, 3539, 3542, 3545, 3549, 3552,
        3555, 3558, 3561, 3564, 3567, 3571, 3574, 3577, 3580, 3583, 3586, 3589, 3593, 3596, 3599, 3602, 3605, 3608, 3611, 3614,
        3618, 3621, 3624, 3627, 3630, 3633, 3636, 3639, 3643, 3646, 3649, 3652, 3655, 3658, 3661, 3664, 3667, 3671, 3674, 3677,
        3680, 3683, 3686, 3689, 3692, 3695, 3699, 3702, 3705, 3708, 3711, 3714, 3717, 3720, 3723, 3726, 3730, 3733, 3736, 3739,
        3742, 3745, 3748, 3751, 3754, 3757, 3760, 3764, 3767, 3770, 3773, 3776, 3779, 3782, 3785, 3788, 3791, 3794, 3797, 3800,
        3804, 3807, 3810, 3813, 3816, 3819, 3822, 3825, 3828, 3831, 3834, 3837, 3840, 3843, 3847, 3850, 3853, 3856, 3859, 3862,
        3865, 3868, 3871, 3874, 3877, 3880, 3883, 3886, 3889, 3892, 3895, 3898, 3902, 3905, 3908, 3911, 3914, 3917, 3920, 3923,
        3926, 3929, 3932, 3935, 3938, 3941, 3944, 3947, 3950, 3953, 3956, 3959, 3962, 3965, 3968, 3971, 3974, 3977, 3980, 3984,
        3987, 3990, 3993, 3996, 3999, 4002, 4005, 4008, 4011, 4014, 4017, 4020, 4023, 4026, 4029, 4032, 4035, 4038, 4041, 4044,
        4047, 4050, 4053, 4056, 4059, 4062, 4065, 4068, 4071, 4074, 4077, 4080, 4083, 4086, 4089, 4092, 4095

    }
#endif
};
#ifdef CONFIG_HI_ISP_PREGAMMA_SUPPORT
static const ISP_CMOS_PREGAMMA_S g_stPreGamma = {
    0,
    {
        0, 12417, 21619, 29902, 37641, 44997, 52063, 58896, 65536, 72012, 78344, 84552, 90647, 96641, 102544, 108363, 114105, 119775, 125379, 130921,
        136406, 141835, 147213, 152542, 157825, 163065, 168262, 173420, 178540, 183623, 188671, 193686, 198668, 203619, 208541, 213433, 218298, 223136,
        227947, 232734, 237496, 242234, 246949, 251642, 256313, 260962, 265592, 270201, 274790, 279360, 283912, 288446, 292962, 297460, 301942, 306407,
        310855, 315288, 319706, 324108, 328495, 332868, 337226, 341571, 345901, 350218, 354522, 358813, 363091, 367356, 371609, 375850, 380079, 384296,
        388502, 392696, 396880, 401052, 405213, 409364, 413504, 417634, 421754, 425863, 429963, 434053, 438134, 442205, 446266, 450319, 454362, 458396,
        462422, 466438, 470446, 474446, 478437, 482420, 486395, 490361, 494320, 498270, 502213, 506148, 510076, 513996, 517908, 521813, 525711, 529601,
        533485, 537361, 541231, 545093, 548949, 552798, 556640, 560475, 564305, 568127, 571943, 575753, 579557, 583354, 587145, 590930, 594709, 598482,
        602249, 606010, 609765, 613515, 617259, 620997, 624729, 628456, 632178, 635894, 639604, 643309, 647009, 650704, 654393, 658077, 661756, 665430,
        669099, 672763, 676421, 680075, 683724, 687368, 691008, 694642, 698272, 701897, 705517, 709133, 712744, 716351, 719953, 723550, 727143, 730732,
        734316, 737896, 741471, 745043, 748610, 752172, 755731, 759285, 762835, 766381, 769923, 773461, 776995, 780525, 784050, 787572, 791090, 794604,
        798114, 801620, 805123, 808622, 812116, 815608, 819095, 822579, 826059, 829535, 833008, 836477, 839942, 843404, 846862, 850317, 853768, 857216,
        860661, 864102, 867539, 870973, 874404, 877831, 881255, 884676, 888093, 891507, 894918, 898326, 901730, 905131, 908529, 911924, 915316, 918704,
        922090, 925472, 928851, 932227, 935600, 938970, 942337, 945701, 949062, 952420, 955775, 959127, 962477, 965823, 969166, 972507, 975845, 979179,
        982511, 985840, 989167, 992490, 995811, 999129, 1002444, 1005757, 1009067, 1012374, 1015678, 1018980, 1022279, 1025575, 1028869, 1032160, 1035448,
        1038734, 1042017, 1045298, 1048575
    }
};
#endif

#ifdef CONFIG_HI_ISP_EDGEMARK_SUPPORT
static const ISP_CMOS_EDGEMARK_S g_stIspEdgeMark = {
    0,          // HI_BOOL bEnable;                          /* RW; Range:[0, 1]; Format:1.0;Enable/Disable Edge Mark */
    100,        // HI_U8     u8Threshold;                /* RW; range: [0, 255];  Format:8.0; */
    0xFF0000,   // HI_U32    u32Color;               /* RW; range: [0, 0xFFFFFF];  Format:32.0; */
};
#endif

#ifdef CONFIG_HI_ISP_HLC_SUPPORT
static const ISP_CMOS_HLC_S g_stIspHlc = {
    0,      // HI_BOOL bEnable;          /* RW; Range:[0, 1]; Format:1.0;Enable/Disable HLC */
    248,    // HI_U8 u8LumaThr;         /* RW; range: [0, 255];  Format:8.0; */
    10,     // HI_U8 u8LumaTarget;      /* RW; range: [0, 255];  Format:8.0; */
};
#endif

static const ISP_CMOS_SHARPEN_S g_stIspYuvSharpen = {
    /* u8SkinUmin */
    100,
    /* u8SkinVmin */
    135,
    /* u8SkinUmax */
    128,
    /* u8SkinVmax */
    150,
    /* Manual Para */
    {
        /* au8LumaWgt[ISP_SHARPEN_LUMA_NUM] */
        {127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,  127, 127, 127, 127},
        /* u16TextureStr[ISP_SHARPEN_GAIN_NUM] */
        {250, 420, 390, 390, 390, 390, 390, 370, 350, 330, 310, 290, 270, 270, 270, 270, 270, 270, 266, 260, 244, 230, 230, 230, 230, 230, 230, 210, 190, 190, 170, 150},
        /* u16EdgeStr[ISP_SHARPEN_GAIN_NUM] */
        {120, 123, 125, 128, 130, 135, 140, 148, 160, 168, 180, 190, 200, 210, 210, 210, 210, 210, 200, 190, 185, 175, 165, 160, 146, 136, 130, 128, 125, 123, 120, 120},
        /* u16TextureFreq */
        190,
        /* u16EdgeFreq */
        128,
        /* u8OverShoot */
        65,
        /* u8UnderShoot */
        75,
        /* u8shootSupStr */
        7,
        /* u8shootSupAdj */
        9,
        /* u8DetailCtrl */
        128,
        /* u8DetailCtrlThr */
        180,
        /* u8EdgeFiltStr */
        60,
        /*u8EdgeFiltMaxCap; */
        18,
        /* u8RGain */
        20,
        /* u8GGain */
        32,
        /* u8BGain */
        20,
        /* u8SkinGain */
        25,
        /* u8MaxSharpGain */
        40
    },
    /* Auto Para */
    {
        /* au16LumaWgt[ISP_SHARPEN_GAIN_NUM][ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO: 100,  200,  400,  800,  1600,  3200,  6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400, 3276800 */
        {   {127,   127,   127,   106,    87,    73,    73,    49,    49,    49,    49,    49,    49,    49,    49,    49},
            {127,   127,   127,   110,    94,    80,    80,    55,    55,    55,    55,    55,    55,    55,    55,    55},
            {127,   127,   127,   115,   102,    88,    88,    62,    62,    62,    62,    62,    62,    62,    62,    62},
            {127,   127,   127,   119,   109,    95,    95,    70,    70,    70,    70,    70,    70,    70,    70,    70},
            {127,   127,   127,   123,   115,   102,   102,    77,    77,    77,    77,    77,    77,    77,    77,    77},
            {127,   127,   127,   125,   119,   107,   107,    84,    84,    84,    84,    84,    84,    84,    84,    84},
            {127,   127,   127,   126,   122,   111,   111,    90,    90,    90,    90,    90,    90,    90,    90,    90},
            {127,   127,   127,   126,   125,   115,   115,    96,    96,    96,    96,    96,    96,    96,    96,    96},
            {127,   127,   127,   127,   127,   119,   119,   102,   102,   102,   102,   102,   102,   102,   102,   102},
            {127,   127,   127,   127,   127,   121,   121,   106,   106,   106,   106,   106,   106,   106,   106,   106},
            {127,   127,   127,   127,   127,   124,   124,   110,   110,   110,   110,   110,   110,   110,   110,   110},
            {127,   127,   127,   127,   127,   125,   125,   114,   114,   114,   114,   114,   114,   114,   114,   114},
            {127,   127,   127,   127,   127,   127,   127,   117,   117,   117,   117,   117,   117,   117,   117,   117},
            {127,   127,   127,   127,   127,   127,   127,   120,   120,   120,   120,   120,   120,   120,   120,   120},
            {127,   127,   127,   127,   127,   127,   127,   123,   123,   123,   123,   123,   123,   123,   123,   123},
            {127,   127,   127,   127,   127,   127,   127,   125,   125,   125,   125,   125,   125,   125,   125,   125},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127},
            {127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127,   127}

        },
        /* au16TextureStr[ISP_SHARPEN_GAIN_NUM][ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO: 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400, 3276800 */
        {   {224,   224,   224,   224,   116,   137,   125,   125,   116,    91,    91,    91,    91,    91,    91,    91},
            {233,   233,   233,   233,   141,   156,   144,   144,   130,   113,   113,   113,   113,   113,   113,   113},
            {243,   243,   243,   243,   168,   177,   164,   164,   145,   135,   135,   135,   135,   135,   135,   135},
            {253,   253,   253,   253,   195,   196,   183,   183,   160,   157,   157,   157,   157,   157,   157,   157},
            {264,   264,   264,   264,   222,   214,   201,   201,   174,   178,   178,   178,   178,   178,   178,   178},
            {273,   273,   273,   273,   248,   229,   215,   215,   186,   196,   196,   196,   196,   196,   196,   196},
            {283,   283,   283,   283,   272,   243,   229,   229,   199,   213,   213,   213,   213,   213,   213,   213},
            {291,   291,   291,   291,   293,   255,   241,   241,   210,   228,   228,   228,   228,   228,   228,   228},
            {298,   298,   298,   298,   311,   267,   252,   252,   220,   243,   243,   243,   243,   243,   243,   243},
            {303,   303,   303,   303,   325,   277,   262,   262,   228,   255,   255,   255,   255,   255,   255,   255},
            {308,   308,   308,   308,   337,   287,   271,   271,   234,   267,   267,   267,   267,   267,   267,   267},
            {312,   312,   312,   312,   347,   295,   279,   279,   240,   276,   276,   276,   276,   276,   276,   276},
            {315,   315,   315,   315,   354,   302,   286,   286,   245,   284,   284,   284,   284,   284,   284,   284},
            {318,   318,   318,   318,   359,   305,   291,   291,   249,   288,   288,   288,   288,   288,   288,   288},
            {320,   320,   320,   320,   363,   307,   296,   296,   252,   291,   291,   291,   291,   291,   291,   291},
            {321,   321,   321,   321,   365,   308,   299,   299,   254,   292,   292,   292,   292,   292,   292,   292},
            {322,   322,   322,   322,   366,   309,   302,   302,   256,   292,   292,   292,   292,   292,   292,   292},
            {321,   321,   321,   321,   365,   309,   302,   302,   256,   290,   290,   290,   290,   290,   290,   290},
            {320,   320,   320,   320,   361,   309,   300,   300,   256,   287,   287,   287,   287,   287,   287,   287},
            {318,   318,   318,   318,   354,   307,   296,   296,   254,   281,   281,   281,   281,   281,   281,   281},
            {315,   315,   315,   315,   346,   302,   291,   291,   250,   274,   274,   274,   274,   274,   274,   274},
            {312,   312,   312,   312,   336,   297,   285,   285,   246,   266,   266,   266,   266,   266,   266,   266},
            {307,   307,   307,   307,   325,   290,   278,   278,   240,   257,   257,   257,   257,   257,   257,   257},
            {303,   303,   303,   303,   313,   283,   271,   271,   235,   248,   248,   248,   248,   248,   248,   248},
            {298,   298,   298,   298,   301,   274,   263,   263,   228,   237,   237,   237,   237,   237,   237,   237},
            {292,   292,   292,   292,   288,   265,   255,   255,   221,   226,   226,   226,   226,   226,   226,   226},
            {285,   285,   285,   285,   273,   254,   246,   246,   213,   214,   214,   214,   214,   214,   214,   214},
            {278,   278,   278,   278,   257,   243,   237,   237,   205,   201,   201,   201,   201,   201,   201,   201},
            {271,   271,   271,   271,   241,   229,   225,   225,   195,   186,   186,   186,   186,   186,   186,   186},
            {264,   264,   264,   264,   225,   214,   213,   213,   185,   170,   170,   170,   170,   170,   170,   170},
            {256,   256,   256,   256,   208,   199,   199,   199,   175,   154,   154,   154,   154,   154,   154,   154},
            {250,   250,   250,   250,   193,   184,   187,   187,   165,   138,   138,   138,   138,   138,   138,   138}
        },
        /* au16EdgeStr     */
        /* ISO */
        /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400, 3276800 */
        {   {226,   226,   258,   364,   425,   400,   349,   349,   330,   499,   499,   499,   499,   499,   499,   499},
            {232,   232,   269,   366,   425,   400,   349,   349,   330,   499,   499,   499,   499,   499,   499,   499},
            {239,   239,   280,   369,   425,   400,   349,   349,   330,   499,   499,   499,   499,   499,   499,   499},
            {245,   245,   291,   371,   425,   400,   349,   349,   330,   499,   499,   499,   499,   499,   499,   499},
            {252,   252,   303,   374,   425,   400,   350,   350,   331,   499,   499,   499,   499,   499,   499,   499},
            {258,   258,   313,   376,   425,   400,   350,   350,   331,   499,   499,   499,   499,   499,   499,   499},
            {265,   265,   324,   379,   425,   400,   350,   350,   331,   499,   499,   499,   499,   499,   499,   499},
            {271,   271,   333,   381,   425,   400,   350,   350,   331,   499,   499,   499,   499,   499,   499,   499},
            {277,   277,   341,   383,   425,   400,   351,   351,   332,   499,   499,   499,   499,   499,   499,   499},
            {282,   282,   348,   384,   424,   400,   351,   351,   332,   499,   499,   499,   499,   499,   499,   499},
            {288,   288,   355,   386,   425,   400,   351,   351,   332,   499,   499,   499,   499,   499,   499,   499},
            {294,   294,   361,   388,   425,   400,   351,   351,   332,   499,   499,   499,   499,   499,   499,   499},
            {300,   300,   366,   390,   425,   401,   351,   351,   332,   499,   499,   499,   499,   499,   499,   499},
            {305,   305,   370,   391,   424,   401,   351,   351,   332,   499,   499,   499,   499,   499,   499,   499},
            {309,   309,   373,   391,   423,   400,   351,   351,   332,   499,   499,   499,   499,   499,   499,   499},
            {313,   313,   375,   391,   422,   399,   351,   351,   332,   499,   499,   499,   499,   499,   499,   499},
            {315,   315,   375,   389,   419,   398,   351,   351,   332,   499,   499,   499,   499,   499,   499,   499},
            {316,   316,   374,   385,   414,   395,   350,   350,   332,   499,   499,   499,   499,   499,   499,   499},
            {317,   317,   373,   381,   409,   393,   351,   351,   331,   499,   499,   499,   499,   499,   499,   499},
            {316,   316,   370,   376,   403,   391,   351,   351,   330,   499,   499,   499,   499,   499,   499,   499},
            {315,   315,   365,   369,   396,   387,   350,   350,   329,   499,   499,   499,   499,   499,   499,   499},
            {311,   311,   358,   361,   387,   382,   349,   349,   327,   499,   499,   499,   499,   499,   499,   499},
            {305,   305,   347,   351,   377,   375,   345,   345,   324,   499,   499,   499,   499,   499,   499,   499},
            {296,   296,   334,   339,   366,   366,   339,   339,   319,   499,   499,   499,   499,   499,   499,   499},
            {284,   284,   319,   326,   353,   354,   330,   330,   312,   499,   499,   499,   499,   499,   499,   499},
            {270,   270,   300,   311,   339,   340,   320,   320,   303,   499,   499,   499,   499,   499,   499,   499},
            {253,   253,   279,   294,   323,   325,   307,   307,   293,   499,   499,   499,   499,   499,   499,   499},
            {235,   235,   256,   276,   307,   308,   294,   294,   283,   499,   499,   499,   499,   499,   499,   499},
            {216,   216,   232,   257,   289,   290,   280,   280,   271,   499,   499,   499,   499,   499,   499,   499},
            {197,   197,   207,   239,   272,   272,   266,   266,   260,   499,   499,   499,   499,   499,   499,   499},
            {178,   178,   184,   220,   255,   255,   252,   252,   249,   499,   499,   499,   499,   499,   499,   499},
            {161,   161,   161,   203,   239,   239,   239,   239,   239,   499,   499,   499,   499,   499,   499,   499}
        },
        /* au16TextureFreq[ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO */
        /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200,  102400,  204800,   409600,   819200,   1638400,  3276800 */
        {180,   170,   165,   160,   150,   140,   128,   128,   128,   128,   128,   100,   100,   100,   100,   100},
        /* au16EdgeFreq[ISP_AUTO_ISO_STRENGTH_NUM] */
        {128,   120,   115,   110,   105,   105,   100,   100,   100,   100,    96,    96,    96,    96,    96,    96},
        /* au8OverShoot[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 55,    60,    65,    85,    85,    70,    65,    55,    50,    50,    30,    10,    10,    10,    10,    10},
        /* au8UnderShoot[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 65,    70,    75,    85,    85,    75,    68,    60,    55,    55,    55,    55,    55,    15,    15,    15},
        /* au8ShootSupStr[ISP_AUTO_ISO_STRENGTH_NUM] */
        {  8,     8,     7,     7,     7,     6,     5,     5,     0,     0,     0,     0,     0,     0,     0,     0},
        /* au8ShootSupAdj[ISP_AUTO_ISO_STRENGTH_NUM] */
        {  4,     4,     7,     7,     7,     6,     5,     5,     0,     0,     0,     0,     0,     0,     0,     0},
        /* au8DetailCtrl[ISP_AUTO_ISO_STRENGTH_NUM] */
        {128,   128,   128,   120,   120,   110,   110,   100,    90,    80,    70,    70,    70,    70,    70,    70},
        /* au8DetailCtrlThr[ISP_AUTO_ISO_STRENGTH_NUM] */
        {180,   180,   180,   180,   180,   180,   180,   180,   180,   180,   180,   180,   180,   180,   180,   180},
        /* au8EdgeFiltStr[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 60,    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,    60},
        /*au8EdgeFiltMaxCap[ISP_AUTO_ISO_STRENGTH_NUM];*/
        { 18,   18,    18,  18,    18,   18,    18,    18,      18,   18,    18,    18,    18,    18,    18,   18 },
        /* au8RGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20},
        /* au8GGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 32,    32,    32,    32,    32,    32,    32,    32,    32,    32,    32,    32,    32,    32,    32,    32},
        /* au8BGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20,    20},
        /* au8SkinGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 25,    25,    25,    25,    25,    25,    25,    25,    25,    25,    25,    25,    25,    25,    25,    25},
        /* u8MaxSharpGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        {40,    40,    40,    40,    40,    40,    40,    40,    40,    40,    40,    40,    40,    40,    40,    40}
    },
};

static const ISP_CMOS_SHARPEN_S g_stIspYuvSharpenWdr = {
    /* u8SkinUmin */
    100,
    /* u8SkinVmin */
    135,
    /* u8SkinUmax */
    128,
    /* u8SkinVmax */
    150,
    /* Manual Para */
    {
        /* au8LumaWgt[ISP_SHARPEN_LUMA_NUM] */
        {127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,  127, 127, 127, 127},
        /* u16TextureStr[ISP_SHARPEN_GAIN_NUM] */
        {250, 420, 390, 390, 390, 390, 390, 370, 350, 330, 310, 290, 270, 270, 270, 270, 270, 270, 266, 260, 244, 230, 230, 230, 230, 230, 230, 210, 190, 190, 170, 150},
        /* u16EdgeStr[ISP_SHARPEN_GAIN_NUM] */
        {120, 123, 125, 128, 130, 135, 140, 148, 160, 168, 180, 190, 200, 210, 210, 210, 210, 210, 200, 190, 185, 175, 165, 160, 146, 136, 130, 128, 125, 123, 120, 120},
        /* u16TextureFreq */
        190,
        /* u16EdgeFreq */
        128,
        /* u8OverShoot */
        65,
        /* u8UnderShoot */
        75,
        /* u8shootSupStr */
        7,
        /* u8shootSupAdj */
        9,
        /* u8DetailCtrl */
        128,
        /* u8DetailCtrlThr */
        180,
        /* u8EdgeFiltStr */
        60,
        /*u8EdgeFiltMaxCap; */
        18,
        /* u8RGain */
        20,
        /* u8GGain */
        32,
        /* u8BGain */
        20,
        /* u8SkinGain */
        25,
        /* u8MaxSharpGain */
        40
    },
    /* Auto Para */
    {
        /* au16LumaWgt[ISP_SHARPEN_GAIN_NUM][ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO: 100,  200,  400,  800,  1600,  3200,  6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400, 3276800 */
        {   { 127, 127, 127,  80,  60,  60,   60,   60,   60,    60,   60,    60,    60,    60,      60,    60},
            { 127, 127, 127,  80,  60,  60,   60,   60,   60,    60,   60,    60,    60,    60,      60,    60},
            { 127, 127, 127,  80,  60,  60,   60,   60,   60,    60,   60,    60,    60,    60,      60,    60},
            { 127, 127, 127,  80,  60,  60,   60,   60,   60,    60,   60,    60,    60,    60,      60,    60},
            { 127, 127, 127,  80,  60,  60,   60,   60,   60,    60,   60,    60,    60,    60,      60,    60},
            { 127, 127, 127,  80,  70,  60,   60,   60,   60,    60,   60,    60,    60,    60,      60,    60},
            { 127, 127, 127,  80,  80,  72,   72,   72,   72,    72,   72,    72,    72,    72,      72,    72},
            { 127, 127, 127,  90,  90,  85,   85,   85,   85,    85,   85,    85,    85,    85,      85,    85},
            { 127, 127, 127, 100, 100, 100,  100,  100,  100,   100,  100,   100,   100,   100,     100,   100},
            { 127, 127, 127, 114, 114, 114,  114,  114,  114,   114,  114,   114,   114,   114,     114,   114},
            { 127, 127, 127, 127, 127, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 127, 127, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 127, 127, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 127, 127, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 127, 127, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 127, 127, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 127, 127, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 127, 127, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 127, 127, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 127, 127, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 110, 110, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 110, 110, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 110, 110, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 110, 110, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 110, 110, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 100, 100, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 100, 100, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 100, 100, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 100, 100, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 100, 100, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 100, 100, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127},
            { 127, 127, 127, 100, 100, 127,  127,  127,  127,   127,  127,   127,   127,   127,     127,   127}
        },
        /* au16TextureStr[ISP_SHARPEN_GAIN_NUM][ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO: 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400, 3276800 */
        {   {180, 180, 170, 160, 155,  90,  90,  60,  60,  60,  60,  60,  60,  60,  60,  60},
            {205, 205, 185, 166, 165, 100, 100,  80,  80,  80,  80,  80,  80,  80,  80,  80},
            {235, 235, 200, 175, 170, 120, 120, 100, 100, 100, 100, 100, 100, 100, 100, 100},
            {260, 260, 215, 190, 180, 145, 145, 130, 130, 130, 130, 130, 130, 130, 130, 130},
            {285, 285, 235, 210, 190, 150, 200, 150, 150, 150, 150, 150, 150, 150, 150, 150},
            {295, 295, 255, 220, 205, 160, 220, 180, 180, 180, 180, 180, 180, 180, 180, 180},
            {310, 310, 280, 245, 215, 165, 240, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {315, 315, 295, 260, 225, 175, 240, 210, 210, 210, 210, 210, 210, 210, 210, 210},
            {320, 320, 310, 270, 230, 180, 240, 220, 220, 220, 220, 220, 220, 220, 220, 220},
            {330, 330, 320, 280, 245, 190, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {330, 330, 330, 290, 250, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {330, 330, 330, 295, 255, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {330, 330, 330, 300, 255, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {330, 330, 330, 300, 260, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {325, 325, 325, 305, 260, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {320, 320, 320, 305, 260, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {315, 315, 315, 305, 260, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {310, 310, 310, 300, 260, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {305, 305, 305, 290, 255, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {295, 295, 295, 284, 250, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230, 230},
            {288, 288, 288, 270, 240, 230, 230, 210, 210, 210, 210, 210, 210, 210, 210, 210},
            {280, 280, 280, 265, 235, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {275, 275, 275, 255, 230, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {270, 270, 270, 245, 220, 220, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {265, 265, 265, 240, 210, 210, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {260, 260, 260, 230, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {250, 250, 250, 220, 192, 192, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {240, 240, 240, 205, 180, 180, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {230, 230, 230, 190, 170, 170, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {215, 215, 215, 170, 155, 155, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {180, 180, 180, 150, 145, 145, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200},
            {130, 130, 130, 130, 130, 130, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200}
        },
        /* au16EdgeStr     */
        /* ISO */
        /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400, 3276800 */
        {   {195, 195, 195, 195, 195, 195, 400, 440, 500, 475, 475, 475, 475, 475, 475, 475},
            {200, 200, 200, 200, 200, 200, 400, 440, 500, 485, 485, 485, 485, 485, 485, 485},
            {220, 220, 220, 220, 220, 220, 400, 440, 500, 495, 495, 495, 495, 495, 495, 495},
            {230, 230, 230, 230, 230, 230, 400, 440, 500, 500, 500, 500, 500, 500, 500, 500},
            {240, 240, 240, 240, 240, 240, 400, 440, 500, 510, 510, 510, 510, 510, 510, 510},
            {250, 250, 250, 250, 250, 250, 400, 440, 500, 520, 520, 520, 520, 520, 520, 520},
            {260, 260, 260, 260, 260, 260, 420, 460, 540, 530, 530, 530, 530, 530, 530, 530},
            {270, 270, 270, 270, 270, 270, 420, 460, 540, 540, 540, 540, 540, 540, 540, 540},
            {280, 280, 280, 280, 280, 280, 420, 460, 540, 545, 545, 545, 545, 545, 545, 545},
            {280, 280, 280, 280, 280, 280, 420, 460, 540, 550, 550, 550, 550, 550, 550, 550},
            {285, 285, 285, 285, 285, 285, 420, 460, 540, 560, 560, 560, 560, 560, 560, 560},
            {290, 290, 290, 290, 290, 290, 420, 460, 540, 565, 565, 565, 565, 565, 565, 565},
            {290, 290, 290, 290, 290, 290, 420, 460, 540, 570, 570, 570, 570, 570, 570, 570},
            {295, 295, 295, 295, 295, 295, 430, 470, 550, 575, 575, 575, 575, 575, 575, 575},
            {295, 295, 295, 295, 295, 295, 430, 470, 550, 580, 580, 580, 580, 580, 580, 580},
            {295, 295, 295, 295, 295, 295, 440, 470, 550, 575, 575, 575, 575, 575, 575, 575},
            {295, 295, 295, 295, 295, 295, 440, 470, 550, 570, 570, 570, 570, 570, 570, 570},
            {295, 295, 295, 295, 295, 295, 450, 480, 580, 565, 565, 565, 565, 565, 565, 565},
            {295, 295, 295, 295, 295, 295, 460, 500, 580, 560, 560, 560, 560, 560, 560, 560},
            {290, 290, 290, 290, 290, 290, 460, 500, 580, 555, 555, 555, 555, 555, 555, 555},
            {285, 285, 285, 285, 285, 285, 460, 500, 580, 550, 550, 550, 550, 550, 550, 550},
            {280, 280, 280, 280, 280, 280, 460, 500, 580, 540, 540, 540, 540, 540, 540, 540},
            {275, 275, 275, 275, 275, 275, 460, 500, 580, 535, 535, 535, 535, 535, 535, 535},
            {265, 265, 265, 265, 265, 265, 460, 500, 580, 530, 530, 530, 530, 530, 530, 530},
            {250, 250, 250, 250, 250, 250, 460, 500, 580, 520, 520, 520, 520, 520, 520, 520},
            {240, 240, 240, 240, 240, 240, 470, 500, 580, 515, 515, 515, 515, 515, 515, 515},
            {220, 220, 220, 220, 220, 220, 470, 500, 580, 510, 510, 510, 510, 510, 510, 510},
            {200, 200, 200, 200, 200, 200, 470, 500, 580, 500, 500, 500, 500, 500, 500, 500},
            {180, 180, 180, 180, 180, 180, 480, 500, 580, 495, 495, 495, 495, 495, 495, 495},
            {160, 160, 160, 160, 160, 160, 480, 500, 580, 485, 485, 485, 485, 485, 485, 485},
            {140, 140, 140, 140, 140, 140, 480, 500, 580, 480, 480, 480, 480, 480, 480, 480},
            {125, 125, 125, 125, 125, 125, 480, 500, 580, 470, 470, 470, 470, 470, 470, 470}
        },
        /* au16TextureFreq[ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO */
        /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200,  102400,  204800,   409600,   819200,   1638400,  3276800 */
        {160, 180, 180, 180, 160, 160, 128, 128, 128, 128, 128, 100, 100, 100, 100, 100},
        /* au16EdgeFreq[ISP_AUTO_ISO_STRENGTH_NUM] */
        {128, 100, 100, 100, 100, 100, 100, 100, 100, 100, 96, 96, 96, 96, 96, 96},
        /* au8OverShoot[ISP_AUTO_ISO_STRENGTH_NUM] */
        {55, 60, 70, 76, 80, 80, 70, 60, 50, 50, 30, 10, 10, 10, 10, 10},
        /* au8UnderShoot[ISP_AUTO_ISO_STRENGTH_NUM] */
        {55, 65, 80, 80, 80, 80, 80, 70, 50, 30, 20, 20, 15, 15, 15, 15},
        /* au8ShootSupStr[ISP_AUTO_ISO_STRENGTH_NUM] */
        {8, 8, 7, 7, 7, 6, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0},
        /* au8ShootSupAdj[ISP_AUTO_ISO_STRENGTH_NUM] */
        {9, 9, 8, 8, 7, 7, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0},
        /* au8DetailCtrl[ISP_AUTO_ISO_STRENGTH_NUM] */
        {128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 120, 120, 120, 120, 120, 120},
        /* au8DetailCtrlThr[ISP_AUTO_ISO_STRENGTH_NUM] */
        {180, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160},
        /* au8EdgeFiltStr[ISP_AUTO_ISO_STRENGTH_NUM] */
        {60, 58, 60, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62},
        /*au8EdgeFiltMaxCap[ISP_AUTO_ISO_STRENGTH_NUM];*/
        { 18,   18,    18,  18,    18,   18,    18,    18,      18,   18,    18,    18,    18,    18,    18,   18 },
        /* au8RGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        {12, 12, 18, 24, 24, 24, 26, 28, 31, 31, 31, 31, 31, 31, 31, 31},
        /* au8GGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        {32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32},
        /* au8BGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        {18, 20, 24, 24, 24, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22},
        /* au8SkinGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        {30, 27, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31},
        /* u8MaxSharpGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        {60, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40}
    },
};

static AWB_CCM_S g_stAwbCcm = {
    3,
    {
        {
            4884,
            {
                0x01DA,  0x80C7,  0x8013,
                0x8068,  0x01D9,  0x8071,
                0x8001,  0x80EA,  0x01EB,
            },
        },
        {
            3636,
            {
                0x01FD,  0x80F2,  0x800B,
                0x808F,  0x01F2,  0x8063,
                0x0008,  0x80F1,  0x01E9,
            },
        },
        {
            2430,
            {
                0x01FD,  0x80F2,  0x800B,
                0x808F,  0x01F2,  0x8063,
                0x0008,  0x80F1,  0x01E9,
            },
        },
        {
            2100,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1600,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1400,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1000,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
    },
};

static AWB_CCM_S g_stAwbCcmFsWdr = {
    3,
    {
        {
            4884,
            {
                0x01DA,  0x80C7,  0x8013,
                0x8068,  0x01D9,  0x8071,
                0x8001,  0x80EA,  0x01EB,
            },
        },
        {
            3636,
            {
                0x01FD,  0x80F2,  0x800B,
                0x808F,  0x01F2,  0x8063,
                0x0008,  0x80F1,  0x01E9,
            },
        },
        {
            2430,
            {
                0x01FD,  0x80F2,  0x800B,
                0x808F,  0x01F2,  0x8063,
                0x0008,  0x80F1,  0x01E9,
            },
        },
        {
            2100,
            {
                0x0112,  0x8011,  0x8001,
                0x806C,  0x0186,  0x801A,
                0x8001,  0x8042,  0x0143
            },
        },
        {
            1600,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1400,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1000,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
    },
};


static AWB_AGC_TABLE_S g_stAwbAgcTable = {
    /* bvalid */
    1,

    /* 1,  2,  4,  8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768 */
    /* saturation */
    {128, 128, 112, 106, 94, 88, 80,  72,  64,  56,   56,   56,    56,  56,    56,    56}
};

static AWB_AGC_TABLE_S g_stAwbAgcTableFSWDR = {
    /* bvalid */
    1,
    /* saturation */
    {90, 90, 88, 85, 82, 78, 75, 72, 68, 65, 60, 55, 50, 50, 50, 50}
};

static const ISP_CMOS_WDR_S g_stIspWDR = {
    /* bFusionMode */
    0,

    /* bMotionComp */
    1,

    /* u16ShortThr */
    4032,

    /* u16LongThr */
    3008,

    /* bForceLong */
    1,

    /* u16ForceLongLowThr */
    500,

    /* u16ForceLongHigThr */
    700,

    /* bShortExpoChk */
    0,

    /* u8ShortCheckThd */
    0x8,

    /* bMDRefFlicker */
    1,

    /* au8MdThrLowGain[16] */
    {45, 45, 45, 45, 45, 45, 64, 96, 128, 255, 255, 255, 255, 255, 255, 255},

    /* au8MdThrHigGain[16] */
    {45, 45, 45, 45, 45, 45, 64, 128, 128, 255, 255, 255, 255, 255, 255, 255},

    /* enBnrMode */
    1,

    /* au16FusionThr[2] */
    {3855, 3000},

    /* u8MdtStillThd */
    0x14,

    /* u8MdtLongBlend */
    0x0
};

static const ISP_CMOS_DEHAZE_S g_stIspDehaze = {
    /* bEnable */
    0,
    /* bUserLutEnable */
    0,
    /* enOpType */
    0,
    /* u8AutoStrength */
    128,
    /* u8ManualStrength */
    128

};

static const ISP_CMOS_DEHAZE_S g_stIspDehazeWDR = {
    /* bEnable */
    1,
    /* bUserLutEnable */
    0,
    /* enOpType */
    0,
    /* u8AutoStrength */
    50,
    /* u8ManualStrength */
    50
};


static const ISP_CMOS_DRC_S g_stIspDRC = {
    /* bEnable */
    0,
    /* enOpType */
    1,
    /* u16ManualStrength */
    512,
    /* u16AutoStrength */
    512,
    /* u8SpatialFltCoef */
    2,
    /* u8RangeFltCoef */
    2,
    /* u8ContrastControl */
    8,
    /* s8DetailAdjustFactor */
    0,
    /* u8RangeAdaMax */
    8,
    /* u8FltScaleFine */
    6,
    /* u8FltScaleCoarse */
    6,
    /* u8GradRevMax */
    64,
    /* u8GradRevThr */
    50,
    /* u8BrightGainLmt */
    15,
    /* u8BrightGainLmtStep */
    10,
    /* u8DarkGainLmtY */
    0,
    /* u8DarkGainLmtC */
    0,
    /* u8PDStrength */
    35,
    /* u8LocalMixingBrightMax */
    64,
    /* u8LocalMixingBrightMin */
    32,
    /* u8LocalMixingBrightThr */
    96,
    /* s8LocalMixingBrightSlo */
    -3,
    /* u8LocalMixingDarkMax */
    64,
    /* u8LocalMixingDarkMin */
    32,
    /* u8LocalMixingDarkThr */
    200,
    /* s8LocalMixingDarkSlo */
    5,
    /* ColorCorrectionLut[33] */
    {1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024},
    /* ToneMappingValue[200] */
    {8, 8, 16, 24, 31, 39, 48, 56, 65, 75, 85, 95, 106, 118, 130, 143, 156, 170, 185, 201, 218, 235, 254, 274, 294, 316, 339, 364, 390, 417, 446, 477, 509, 543, 579, 617, 658, 701, 746, 794, 844, 898, 955, 1015, 1078, 1145, 1216,
     1291, 1370, 1454, 1543, 1637, 1736, 1841, 1952, 2069, 2194, 2325, 2465, 2612, 2767, 2932, 3106, 3290, 3485, 3691, 3909, 4140, 4384, 4641, 4914, 5202, 5507, 5830, 6171, 6531, 6913, 7316, 7742, 8193, 8669, 9173, 9705, 10268,
     10863, 11492, 12145, 12808, 13483, 14171, 14872, 15587, 16319, 17069, 17840, 18635, 19458, 19881, 20313, 20754, 21204, 21661, 22122, 22586, 23053, 23525, 24000, 24480, 24965, 25455, 25950, 26451, 26959, 27473, 27995, 28524,
     29062, 29609, 30165, 30732, 31309, 31899, 32501, 33116, 33746, 34391, 35043, 35706, 36381, 37066, 37763, 38472, 39192, 39925, 40671, 41429, 42201, 42591, 42986, 43383, 43784, 44189, 44597, 45008, 45424, 45842, 46265, 46691,
     47121, 47555, 47993, 48434, 48880, 49329, 49783, 50241, 50703, 51169, 51639, 52113, 52592, 53075, 53564, 54056, 54552, 55054, 55560, 56071, 56586, 56846, 57107, 57369, 57632, 57896, 58162, 58429, 58697, 58967, 59238, 59510,
     59783, 60057, 60333, 60611, 60889, 61169, 61451, 61733, 62017, 62303, 62589, 62877, 63167, 63458, 63750, 64044, 64340, 64636, 64934, 65234},
    /* u8Asymmetry */
    2,
    /* u8SecondPole */
    180,
    /* u8Stretch */
    54,
    /* u8Compress */
    180,
    /* u8CurveSel */
    0,
    /* au16Xpoint */
    {0, 200, 400, 600, 1000},
    /* au16Ypoint */
    {0, 200, 400, 600, 1000},
    /* au16Slope */
    {1000, 1000, 1000, 1000, 1000}
};

static const ISP_CMOS_DRC_S g_stIspDRCWDR = {
    /* bEnable */
    1,
    /* enOpType */
    1,
    /* u16ManualStrength */
    1023,
    /* u16AutoStrength */
    1023,
    /* u8SpatialFltCoef */
    0,
    /* u8RangeFltCoef */
    1,
    /* u8ContrastControl */
    8,
    /* s8DetailAdjustFactor */
    8,
    /* u8RangeAdaMax */
    4,
    /* u8FltScaleFine */
    3,
    /* u8FltScaleCoarse */
    3,
    /* u8GradRevMax */
    30,
    /* u8GradRevThr */
    35,
    /* u8BrightGainLmt */
    0,
    /* u8BrightGainLmtStep */
    0,
    /* u8DarkGainLmtY */
    0,
    /* u8DarkGainLmtC */
    0,
    /* u8PDStrength */
    35,
    /* u8LocalMixingBrightMax */
    0,
    /* u8LocalMixingBrightMin */
    0,
    /* u8LocalMixingBrightThr */
    96,
    /* s8LocalMixingBrightSlo */
    -3,
    /* u8LocalMixingDarkMax */
    0,
    /* u8LocalMixingDarkMin */
    0,
    /* u8LocalMixingDarkThr */
    200,
    /* s8LocalMixingDarkSlo */
    5,
    /* ColorCorrectionLut[33] */
    {1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 772, 768, 764, 760, 756, 752, 748, 744, 740, 736, 732, 728, 724, 720, 716, 712, 708, 704, 700},
    /* ToneMappingValue[200] */
    {8, 8, 16, 24, 31, 39, 48, 56, 65, 75, 85, 95, 106, 118, 130, 143, 156, 170, 185, 201, 218, 235, 254, 274, 294, 316, 339, 364, 390, 417, 446, 477, 509, 543, 579, 617, 658, 701, 746, 794, 844, 898, 955, 1015, 1078, 1145, 1216,
     1291, 1370, 1454, 1543, 1637, 1736, 1841, 1952, 2069, 2194, 2325, 2465, 2612, 2767, 2932, 3106, 3290, 3485, 3691, 3909, 4140, 4384, 4641, 4914, 5202, 5507, 5830, 6171, 6531, 6913, 7316, 7742, 8193, 8669, 9173, 9705, 10268,
     10863, 11492, 12145, 12808, 13483, 14171, 14872, 15587, 16319, 17069, 17840, 18635, 19458, 19881, 20313, 20754, 21204, 21661, 22122, 22586, 23053, 23525, 24000, 24480, 24965, 25455, 25950, 26451, 26959, 27473, 27995, 28524,
     29062, 29609, 30165, 30732, 31309, 31899, 32501, 33116, 33746, 34391, 35043, 35706, 36381, 37066, 37763, 38472, 39192, 39925, 40671, 41429, 42201, 42591, 42986, 43383, 43784, 44189, 44597, 45008, 45424, 45842, 46265, 46691,
     47121, 47555, 47993, 48434, 48880, 49329, 49783, 50241, 50703, 51169, 51639, 52113, 52592, 53075, 53564, 54056, 54552, 55054, 55560, 56071, 56586, 56846, 57107, 57369, 57632, 57896, 58162, 58429, 58697, 58967, 59238, 59510,
     59783, 60057, 60333, 60611, 60889, 61169, 61451, 61733, 62017, 62303, 62589, 62877, 63167, 63458, 63750, 64044, 64340, 64636, 64934, 65234},
    /* u8Asymmetry */
    30,
    /* u8SecondPole */
    200,
    /* u8Stretch */
    60,
    /* u8Compress */
    200,
    /* u8CurveSel */
    2,
    /* au16Xpoint */
    {0, 200, 400, 600, 1000},
    /* au16Ypoint */
    {0, 200, 400, 600, 1000},
    /* au16Slope */
    {1000, 1000, 1000, 1000, 1000}
};

#ifdef CONFIG_HI_ISP_CA_SUPPORT
static const ISP_CMOS_CA_S g_stIspCA = {
    /* CA */
    1,
    /* Y */
    {
        516, 525, 534, 544, 554, 563, 573, 583, 594, 604, 614, 624, 634, 644, 654, 664,
        674, 684, 694, 704, 713, 723, 732, 741, 750, 758, 766, 775, 782, 790, 797, 804,
        811, 817, 823, 828, 834, 839, 844, 848, 853, 857, 861, 865, 868, 872, 875, 878,
        881, 884, 887, 890, 892, 895, 898, 900, 903, 905, 908, 910, 913, 915, 918, 921,
        924, 926, 929, 932, 935, 937, 940, 943, 945, 948, 950, 952, 955, 957, 959, 961,
        964, 966, 968, 970, 972, 974, 976, 978, 979, 981, 983, 985, 987, 988, 990, 992,
        993, 994, 995, 996, 997, 998, 998, 999, 1000, 1001, 1002, 1002, 1003, 1004, 1005, 1006,
        1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1018, 1019, 1020, 1022, 1024
    },
    /* ISO */
    {1300, 1300, 1250, 1200, 1150, 1100, 1050, 1000, 950, 900, 900, 800, 800, 800, 800, 800}
};
#endif

static const ISP_CMOS_LSC_S g_stCmosLsc = {
    /* MeshStrength */
    1024,
    /* MeshScale */
    1,
    /* ISP_LSC_CABLI_TABLE_S */
    {
        {
            // Rgain:
            {
                560, 513, 476, 446, 421, 399, 382, 371, 356, 346, 337, 328, 322, 317, 313, 310, 308, 307, 308, 310, 313, 319, 325, 331, 338, 351, 360, 376, 391, 409, 433, 462, 492,
                546, 504, 464, 439, 415, 393, 376, 365, 352, 340, 333, 325, 319, 313, 309, 306, 304, 303, 304, 305, 309, 315, 320, 328, 334, 346, 355, 368, 383, 404, 425, 455, 480,
                526, 489, 456, 428, 408, 388, 370, 360, 346, 336, 328, 321, 316, 309, 305, 302, 301, 301, 301, 302, 305, 311, 316, 322, 331, 340, 351, 363, 376, 394, 417, 442, 466,
                512, 477, 444, 420, 402, 380, 366, 354, 343, 334, 326, 317, 310, 307, 302, 299, 298, 298, 298, 298, 302, 307, 311, 319, 327, 338, 345, 359, 370, 384, 407, 434, 457,
                501, 466, 438, 412, 396, 376, 364, 351, 340, 330, 321, 315, 308, 304, 299, 295, 295, 294, 295, 296, 300, 303, 309, 315, 322, 332, 340, 353, 366, 380, 400, 422, 447,
                490, 460, 430, 408, 390, 375, 361, 347, 335, 327, 318, 311, 307, 300, 297, 293, 291, 292, 292, 294, 296, 301, 307, 312, 319, 329, 338, 348, 360, 376, 393, 415, 438,
                483, 455, 425, 405, 385, 369, 355, 344, 334, 326, 316, 309, 302, 298, 293, 290, 288, 289, 289, 291, 294, 299, 304, 311, 317, 326, 336, 346, 357, 372, 388, 408, 428,
                476, 447, 423, 401, 381, 368, 353, 341, 332, 322, 312, 305, 299, 294, 288, 286, 284, 284, 286, 288, 290, 295, 302, 307, 314, 323, 334, 343, 354, 367, 385, 404, 423,
                472, 442, 418, 395, 379, 366, 351, 339, 328, 317, 308, 301, 294, 288, 284, 282, 279, 279, 280, 283, 287, 292, 298, 306, 313, 321, 330, 341, 352, 366, 382, 399, 420,
                470, 440, 416, 395, 377, 364, 350, 338, 326, 314, 304, 296, 290, 284, 279, 277, 275, 273, 275, 278, 283, 290, 296, 304, 311, 319, 329, 340, 351, 364, 377, 396, 415,
                462, 438, 411, 395, 377, 363, 349, 334, 321, 309, 301, 292, 285, 279, 274, 272, 270, 269, 270, 273, 279, 285, 292, 301, 309, 318, 328, 338, 351, 362, 376, 393, 409,
                461, 437, 410, 393, 376, 363, 346, 332, 318, 305, 296, 288, 283, 275, 271, 268, 265, 265, 267, 269, 275, 280, 287, 298, 307, 317, 326, 338, 349, 361, 373, 390, 409,
                459, 435, 410, 392, 376, 361, 343, 328, 314, 302, 292, 284, 280, 272, 268, 264, 262, 261, 263, 265, 270, 277, 283, 292, 304, 316, 324, 336, 348, 362, 373, 390, 406,
                459, 437, 410, 394, 376, 359, 341, 326, 311, 299, 290, 282, 274, 268, 265, 262, 260, 260, 259, 262, 267, 273, 281, 290, 300, 313, 324, 334, 348, 361, 373, 388, 406,
                459, 437, 411, 394, 375, 356, 339, 324, 309, 297, 288, 279, 273, 267, 262, 260, 260, 258, 258, 260, 265, 270, 278, 287, 297, 310, 322, 334, 348, 360, 375, 389, 404,
                459, 438, 413, 392, 373, 355, 337, 321, 308, 295, 286, 279, 271, 265, 261, 259, 258, 257, 257, 258, 262, 270, 276, 284, 295, 308, 321, 334, 348, 360, 375, 389, 404,
                460, 438, 413, 392, 372, 352, 336, 321, 307, 294, 285, 278, 271, 264, 260, 258, 257, 256, 256, 258, 262, 268, 275, 283, 294, 307, 320, 334, 348, 360, 374, 390, 406,
                460, 439, 413, 392, 370, 351, 334, 321, 306, 294, 285, 277, 270, 264, 261, 258, 257, 256, 256, 258, 261, 266, 274, 283, 293, 305, 319, 334, 348, 362, 375, 392, 406,
                466, 441, 413, 391, 370, 351, 334, 319, 306, 293, 285, 278, 271, 266, 261, 258, 258, 257, 256, 257, 262, 267, 274, 283, 292, 304, 318, 333, 348, 362, 377, 394, 406,
                470, 444, 417, 391, 369, 351, 332, 319, 305, 295, 286, 279, 273, 267, 262, 258, 258, 257, 258, 258, 263, 268, 274, 283, 292, 304, 318, 332, 349, 364, 379, 395, 410,
                470, 446, 418, 391, 369, 351, 333, 319, 305, 296, 287, 279, 275, 268, 263, 260, 258, 257, 258, 262, 263, 270, 275, 283, 293, 305, 318, 332, 349, 365, 380, 396, 411,
                477, 445, 420, 392, 368, 349, 332, 319, 310, 297, 289, 282, 276, 270, 265, 261, 260, 259, 261, 263, 266, 272, 277, 285, 294, 306, 319, 334, 350, 366, 383, 401, 417,
                481, 450, 421, 393, 371, 350, 334, 319, 310, 299, 292, 284, 278, 273, 268, 263, 262, 262, 263, 265, 269, 275, 280, 287, 295, 308, 321, 336, 351, 368, 385, 403, 420,
                486, 455, 423, 395, 371, 351, 335, 321, 311, 302, 295, 287, 281, 275, 270, 267, 264, 265, 266, 268, 273, 278, 283, 289, 299, 310, 323, 337, 352, 369, 388, 407, 423,
                492, 457, 424, 396, 374, 352, 337, 323, 314, 306, 296, 290, 284, 279, 274, 269, 268, 268, 270, 272, 276, 281, 286, 292, 302, 313, 326, 340, 355, 373, 391, 410, 429,
                496, 462, 429, 400, 376, 357, 339, 328, 317, 308, 301, 294, 287, 282, 277, 273, 272, 272, 275, 277, 280, 284, 290, 297, 305, 317, 328, 343, 358, 375, 395, 418, 435,
                502, 468, 437, 405, 379, 362, 343, 332, 320, 313, 306, 296, 291, 286, 282, 278, 276, 277, 279, 280, 284, 290, 294, 300, 309, 318, 332, 346, 362, 378, 398, 422, 441,
                510, 475, 440, 409, 384, 364, 349, 338, 326, 317, 308, 301, 294, 290, 285, 282, 279, 282, 283, 285, 289, 294, 297, 304, 313, 322, 335, 350, 366, 383, 404, 426, 446,
                520, 480, 444, 413, 391, 369, 352, 340, 332, 321, 313, 306, 299, 294, 290, 286, 285, 286, 287, 291, 293, 298, 302, 308, 315, 327, 338, 353, 368, 387, 408, 432, 452,
                533, 489, 451, 421, 396, 375, 360, 348, 336, 327, 319, 311, 303, 299, 294, 291, 290, 292, 292, 295, 297, 303, 307, 313, 320, 331, 343, 356, 373, 392, 413, 440, 462,
                540, 499, 461, 429, 402, 380, 363, 351, 340, 330, 323, 315, 308, 303, 300, 296, 296, 296, 299, 299, 302, 307, 311, 317, 324, 338, 346, 362, 378, 396, 420, 447, 469,
                557, 510, 470, 438, 410, 387, 370, 359, 347, 338, 328, 320, 314, 310, 304, 302, 303, 303, 303, 305, 307, 311, 316, 321, 330, 340, 352, 366, 383, 403, 428, 459, 483,
                566, 521, 480, 445, 416, 392, 377, 362, 351, 340, 331, 325, 317, 314, 309, 307, 309, 308, 308, 309, 311, 316, 320, 326, 333, 343, 355, 370, 388, 408, 434, 462, 508
            },

            // Grgain:
            {
                499, 460, 434, 411, 391, 376, 362, 353, 341, 333, 326, 319, 314, 309, 305, 303, 302, 301, 302, 303, 307, 310, 315, 322, 329, 337, 346, 358, 369, 387, 405, 427, 447,
                485, 454, 424, 404, 386, 370, 358, 348, 338, 329, 321, 316, 311, 306, 302, 300, 299, 298, 299, 301, 304, 307, 313, 319, 326, 333, 342, 353, 366, 382, 400, 420, 439,
                471, 444, 417, 397, 379, 365, 354, 344, 334, 326, 319, 312, 307, 303, 299, 297, 296, 295, 297, 297, 301, 304, 309, 314, 322, 330, 338, 348, 361, 374, 391, 411, 432,
                459, 434, 411, 390, 375, 361, 351, 341, 332, 322, 315, 309, 305, 301, 297, 294, 293, 292, 293, 294, 297, 302, 305, 312, 319, 327, 335, 345, 355, 368, 384, 402, 422,
                451, 427, 404, 385, 372, 358, 347, 337, 327, 320, 313, 307, 302, 299, 294, 292, 292, 291, 291, 292, 295, 298, 302, 309, 316, 323, 332, 340, 351, 363, 377, 396, 414,
                444, 422, 401, 384, 367, 354, 344, 333, 326, 318, 311, 305, 300, 295, 292, 289, 288, 288, 289, 291, 292, 297, 301, 307, 313, 321, 328, 338, 347, 360, 374, 391, 408,
                441, 416, 395, 382, 366, 353, 342, 332, 324, 316, 308, 302, 297, 293, 289, 287, 285, 286, 286, 288, 291, 294, 298, 304, 310, 320, 327, 335, 345, 356, 368, 386, 401,
                434, 413, 394, 376, 363, 352, 341, 330, 321, 313, 306, 301, 293, 289, 286, 283, 281, 281, 283, 284, 287, 292, 297, 303, 309, 316, 326, 334, 344, 353, 366, 382, 396,
                430, 411, 392, 375, 361, 351, 339, 328, 320, 312, 303, 296, 290, 285, 281, 278, 277, 277, 279, 281, 285, 289, 295, 301, 307, 314, 324, 333, 342, 353, 363, 378, 393,
                429, 409, 388, 375, 361, 350, 338, 327, 318, 307, 299, 292, 285, 280, 277, 274, 273, 271, 273, 276, 280, 286, 293, 299, 306, 313, 321, 331, 340, 352, 361, 375, 388,
                429, 406, 388, 374, 361, 350, 337, 325, 314, 303, 296, 287, 281, 277, 272, 269, 267, 267, 268, 272, 277, 283, 289, 297, 304, 313, 320, 330, 340, 350, 360, 373, 388,
                425, 404, 387, 374, 361, 348, 335, 323, 310, 299, 292, 283, 279, 273, 268, 265, 264, 262, 264, 267, 272, 278, 286, 293, 303, 311, 320, 328, 339, 349, 359, 373, 386,
                423, 404, 386, 374, 360, 347, 334, 320, 307, 297, 288, 280, 277, 269, 265, 262, 261, 260, 261, 264, 269, 274, 282, 291, 300, 310, 320, 328, 338, 349, 359, 370, 384,
                427, 406, 388, 374, 360, 346, 332, 318, 305, 294, 285, 278, 271, 266, 262, 260, 259, 258, 260, 261, 266, 271, 279, 288, 297, 309, 319, 327, 338, 348, 360, 369, 383,
                424, 407, 389, 375, 360, 345, 330, 315, 303, 292, 283, 276, 269, 264, 260, 258, 258, 257, 258, 259, 263, 269, 276, 286, 296, 306, 317, 328, 338, 350, 360, 370, 383,
                425, 407, 391, 374, 359, 343, 327, 314, 302, 290, 282, 275, 269, 263, 259, 257, 257, 256, 256, 257, 261, 267, 273, 282, 292, 303, 315, 327, 338, 349, 360, 370, 383,
                428, 409, 392, 375, 359, 342, 327, 313, 300, 289, 281, 274, 267, 262, 258, 257, 257, 256, 256, 257, 260, 266, 273, 281, 291, 302, 315, 327, 338, 350, 361, 373, 385,
                430, 411, 391, 375, 358, 341, 326, 312, 300, 288, 281, 273, 268, 262, 258, 257, 256, 256, 256, 257, 260, 265, 272, 280, 290, 301, 314, 326, 339, 350, 362, 374, 385,
                432, 412, 393, 375, 355, 340, 325, 311, 299, 289, 281, 274, 269, 263, 258, 257, 256, 256, 256, 258, 261, 266, 273, 280, 289, 300, 312, 326, 339, 351, 362, 376, 388,
                434, 414, 394, 373, 354, 339, 325, 310, 299, 289, 282, 275, 270, 265, 260, 257, 257, 256, 256, 258, 262, 266, 273, 281, 289, 299, 313, 325, 339, 352, 365, 377, 388,
                437, 416, 395, 373, 354, 339, 325, 310, 299, 290, 282, 277, 272, 265, 261, 257, 257, 256, 257, 260, 263, 268, 274, 281, 290, 300, 313, 326, 339, 353, 366, 379, 390,
                441, 418, 396, 373, 354, 338, 324, 310, 303, 291, 284, 278, 273, 268, 263, 260, 258, 258, 260, 262, 265, 270, 275, 282, 291, 301, 314, 326, 340, 353, 368, 382, 393,
                444, 421, 397, 375, 355, 338, 325, 312, 303, 293, 286, 280, 275, 270, 266, 262, 261, 260, 262, 264, 269, 273, 277, 284, 292, 302, 314, 327, 341, 355, 368, 384, 396,
                449, 423, 397, 377, 358, 338, 326, 313, 304, 296, 289, 282, 277, 272, 269, 265, 262, 264, 264, 268, 271, 275, 281, 287, 295, 304, 315, 328, 342, 355, 370, 387, 399,
                453, 425, 401, 378, 359, 341, 327, 316, 305, 299, 291, 285, 280, 274, 271, 268, 265, 266, 269, 271, 273, 278, 283, 289, 297, 307, 318, 331, 344, 358, 374, 390, 402,
                456, 430, 404, 382, 362, 345, 330, 318, 309, 302, 295, 288, 283, 278, 274, 270, 269, 270, 271, 275, 278, 282, 286, 292, 300, 309, 320, 332, 346, 361, 377, 394, 407,
                462, 434, 406, 384, 365, 347, 333, 321, 314, 305, 298, 291, 286, 282, 278, 274, 273, 275, 276, 278, 282, 286, 291, 296, 302, 312, 323, 335, 347, 362, 379, 398, 413,
                466, 437, 412, 388, 368, 351, 337, 325, 317, 309, 301, 295, 289, 285, 282, 279, 278, 279, 281, 283, 286, 291, 294, 298, 305, 315, 325, 339, 352, 365, 383, 403, 418,
                473, 445, 415, 392, 372, 355, 341, 330, 322, 313, 307, 299, 293, 289, 287, 283, 283, 283, 286, 287, 289, 293, 298, 302, 309, 319, 328, 341, 353, 369, 388, 408, 422,
                483, 452, 423, 397, 378, 359, 346, 335, 326, 318, 312, 303, 298, 293, 290, 288, 287, 288, 289, 291, 294, 298, 303, 306, 312, 323, 332, 344, 357, 374, 392, 412, 431,
                493, 460, 431, 403, 382, 364, 351, 339, 330, 321, 315, 309, 302, 298, 294, 293, 292, 293, 295, 296, 299, 302, 306, 310, 316, 328, 336, 347, 362, 378, 397, 420, 435,
                502, 470, 437, 411, 387, 370, 357, 344, 334, 326, 320, 313, 307, 304, 300, 298, 299, 298, 299, 300, 302, 306, 309, 313, 320, 329, 339, 353, 366, 383, 403, 425, 445,
                511, 475, 444, 414, 393, 374, 361, 346, 338, 329, 322, 317, 309, 307, 304, 302, 304, 303, 302, 303, 305, 308, 311, 317, 324, 333, 343, 355, 369, 387, 407, 432, 466
            },

            // Gbgain:
            {
                498, 465, 432, 410, 390, 375, 362, 352, 341, 332, 325, 320, 313, 308, 305, 303, 301, 301, 302, 303, 306, 312, 315, 321, 330, 338, 346, 357, 370, 387, 406, 427, 450,
                486, 455, 425, 404, 385, 371, 358, 347, 339, 330, 323, 317, 311, 307, 303, 300, 299, 298, 300, 301, 304, 308, 313, 319, 325, 333, 344, 353, 366, 382, 399, 421, 440,
                470, 444, 416, 397, 381, 366, 354, 345, 333, 326, 318, 313, 308, 303, 299, 297, 296, 296, 296, 297, 301, 304, 309, 315, 321, 330, 338, 348, 359, 375, 392, 412, 433,
                462, 434, 411, 392, 375, 362, 350, 340, 331, 322, 315, 310, 306, 301, 297, 294, 293, 292, 293, 295, 297, 301, 306, 311, 318, 326, 334, 345, 354, 369, 384, 403, 423,
                452, 429, 405, 387, 373, 358, 347, 338, 327, 320, 314, 308, 302, 298, 295, 292, 291, 291, 291, 292, 295, 300, 303, 309, 315, 324, 332, 341, 352, 363, 378, 396, 415,
                446, 422, 401, 384, 368, 355, 345, 334, 326, 318, 312, 306, 301, 296, 292, 290, 288, 288, 290, 290, 292, 297, 302, 307, 313, 321, 329, 338, 349, 360, 374, 389, 410,
                442, 418, 397, 382, 366, 353, 343, 332, 323, 316, 308, 302, 297, 293, 289, 286, 285, 285, 287, 287, 291, 294, 298, 305, 311, 319, 327, 336, 346, 356, 369, 386, 402,
                436, 413, 395, 376, 363, 353, 341, 331, 321, 314, 307, 301, 294, 291, 286, 282, 281, 281, 283, 285, 287, 292, 296, 303, 309, 317, 326, 333, 343, 354, 367, 382, 399,
                432, 411, 393, 375, 361, 351, 340, 329, 320, 312, 303, 296, 289, 285, 281, 278, 277, 277, 279, 281, 284, 290, 295, 301, 308, 314, 323, 333, 342, 353, 364, 378, 394,
                431, 410, 390, 375, 361, 350, 339, 327, 317, 307, 299, 292, 286, 280, 277, 274, 273, 271, 273, 277, 280, 286, 292, 299, 306, 314, 321, 332, 341, 351, 362, 376, 391,
                426, 408, 388, 374, 361, 351, 337, 325, 313, 304, 295, 288, 281, 277, 272, 270, 267, 267, 268, 272, 276, 281, 289, 297, 304, 313, 320, 330, 340, 350, 361, 374, 387,
                424, 405, 389, 374, 361, 350, 336, 324, 311, 299, 291, 284, 280, 272, 268, 266, 264, 262, 264, 268, 272, 279, 286, 294, 303, 313, 320, 330, 340, 349, 360, 372, 386,
                424, 405, 390, 375, 362, 348, 333, 321, 307, 296, 288, 281, 277, 269, 265, 262, 261, 261, 262, 264, 269, 275, 282, 291, 301, 310, 319, 329, 339, 349, 359, 373, 384,
                426, 407, 389, 376, 362, 347, 332, 319, 304, 295, 286, 278, 271, 266, 264, 261, 260, 259, 259, 261, 266, 271, 278, 287, 297, 309, 318, 329, 338, 350, 360, 371, 386,
                424, 407, 391, 375, 361, 345, 330, 316, 303, 292, 284, 276, 269, 265, 261, 259, 258, 257, 257, 258, 264, 269, 276, 285, 295, 306, 318, 328, 338, 349, 360, 372, 385,
                427, 409, 392, 375, 359, 344, 328, 314, 302, 292, 282, 275, 269, 264, 260, 257, 256, 256, 256, 258, 261, 268, 273, 282, 292, 305, 317, 328, 338, 349, 362, 373, 384,
                429, 410, 392, 376, 359, 342, 327, 313, 301, 289, 281, 274, 268, 262, 259, 257, 257, 256, 256, 257, 261, 266, 273, 282, 291, 302, 315, 327, 338, 351, 361, 374, 385,
                431, 411, 393, 375, 359, 341, 327, 313, 301, 289, 281, 274, 268, 263, 259, 257, 257, 256, 256, 258, 261, 266, 273, 281, 289, 300, 313, 326, 339, 351, 361, 375, 386,
                435, 413, 395, 374, 357, 340, 325, 313, 299, 289, 282, 275, 269, 263, 259, 256, 257, 256, 256, 257, 261, 266, 273, 280, 289, 300, 313, 325, 339, 352, 364, 376, 387,
                435, 415, 395, 375, 357, 341, 325, 313, 299, 291, 282, 276, 270, 264, 260, 257, 256, 256, 256, 259, 262, 267, 273, 279, 289, 300, 313, 325, 339, 353, 366, 377, 391,
                438, 418, 396, 374, 355, 340, 325, 311, 300, 290, 283, 278, 272, 266, 261, 258, 257, 256, 257, 260, 264, 269, 274, 281, 291, 301, 313, 326, 339, 354, 367, 379, 392,
                443, 420, 397, 375, 355, 338, 324, 311, 305, 292, 284, 279, 273, 268, 264, 260, 259, 258, 259, 263, 266, 270, 275, 282, 291, 302, 314, 327, 340, 355, 368, 382, 393,
                445, 422, 399, 376, 356, 339, 325, 313, 303, 293, 287, 281, 275, 270, 266, 262, 261, 260, 261, 264, 269, 272, 277, 284, 292, 302, 314, 327, 341, 355, 370, 385, 398,
                452, 424, 400, 378, 357, 341, 326, 314, 305, 296, 289, 283, 278, 273, 268, 265, 264, 263, 264, 268, 271, 276, 281, 286, 294, 304, 315, 329, 343, 358, 374, 387, 402,
                454, 426, 403, 381, 359, 343, 327, 316, 307, 300, 292, 286, 280, 275, 272, 268, 266, 267, 268, 270, 274, 279, 284, 290, 297, 307, 318, 331, 344, 359, 375, 391, 405,
                458, 432, 405, 382, 362, 345, 331, 319, 309, 302, 296, 288, 282, 278, 274, 271, 270, 270, 273, 275, 278, 282, 287, 292, 299, 309, 320, 333, 347, 361, 376, 395, 409,
                463, 435, 410, 385, 366, 348, 333, 322, 313, 306, 299, 292, 287, 281, 279, 275, 273, 274, 277, 278, 282, 286, 290, 296, 302, 313, 323, 336, 350, 364, 382, 399, 413,
                466, 441, 413, 390, 369, 352, 337, 326, 318, 309, 302, 295, 290, 286, 283, 279, 278, 279, 282, 283, 286, 291, 294, 299, 305, 315, 326, 338, 352, 367, 384, 404, 418,
                476, 447, 418, 394, 374, 357, 340, 331, 321, 313, 308, 299, 294, 289, 287, 284, 283, 283, 286, 287, 290, 295, 299, 303, 309, 318, 329, 341, 355, 370, 387, 407, 424,
                483, 456, 424, 400, 377, 360, 347, 336, 326, 318, 313, 303, 298, 293, 290, 287, 287, 288, 291, 292, 293, 298, 302, 307, 313, 323, 332, 345, 358, 374, 392, 413, 430,
                493, 462, 431, 405, 383, 365, 352, 340, 330, 322, 316, 308, 303, 298, 295, 293, 292, 294, 294, 296, 298, 303, 306, 311, 315, 328, 336, 349, 362, 378, 397, 420, 437,
                507, 470, 438, 412, 388, 370, 357, 345, 334, 327, 320, 313, 307, 304, 300, 299, 299, 300, 299, 300, 302, 306, 310, 314, 320, 330, 339, 352, 367, 384, 403, 426, 446,
                515, 475, 444, 416, 393, 374, 360, 349, 339, 329, 323, 317, 311, 309, 304, 303, 304, 303, 302, 304, 306, 309, 313, 317, 324, 333, 343, 356, 370, 389, 406, 431, 469
            },

            // Bgain:
            {
                483, 452, 424, 404, 385, 373, 358, 351, 341, 332, 324, 317, 311, 307, 304, 302, 301, 299, 301, 303, 306, 309, 315, 322, 329, 335, 344, 356, 368, 384, 402, 423, 443,
                474, 444, 419, 399, 380, 367, 354, 345, 338, 329, 320, 315, 309, 305, 302, 299, 299, 296, 298, 300, 302, 306, 310, 317, 326, 332, 341, 351, 363, 378, 394, 417, 435,
                459, 434, 412, 392, 377, 363, 352, 341, 332, 324, 317, 310, 308, 302, 298, 295, 295, 294, 296, 296, 299, 303, 308, 313, 320, 329, 337, 346, 357, 371, 387, 407, 424,
                449, 426, 404, 385, 372, 358, 348, 338, 329, 322, 315, 309, 304, 299, 296, 294, 294, 292, 292, 294, 297, 299, 304, 309, 318, 325, 333, 342, 354, 365, 382, 399, 419,
                440, 423, 399, 381, 369, 355, 345, 335, 327, 318, 313, 307, 304, 298, 295, 291, 291, 290, 291, 291, 295, 297, 303, 307, 316, 322, 330, 341, 350, 361, 377, 392, 411,
                435, 417, 395, 380, 365, 353, 342, 332, 325, 317, 310, 305, 301, 296, 292, 288, 287, 288, 288, 289, 291, 296, 301, 306, 313, 320, 329, 337, 346, 358, 371, 387, 404,
                430, 412, 392, 377, 363, 352, 341, 330, 322, 315, 308, 302, 297, 292, 288, 286, 283, 285, 286, 287, 288, 295, 298, 304, 310, 317, 326, 333, 344, 354, 369, 383, 399,
                427, 409, 393, 374, 360, 351, 341, 329, 320, 314, 307, 299, 295, 288, 285, 282, 281, 281, 282, 284, 287, 291, 296, 301, 308, 316, 326, 333, 342, 352, 364, 379, 394,
                423, 410, 388, 372, 359, 349, 338, 329, 319, 309, 302, 296, 290, 286, 281, 278, 275, 277, 279, 280, 283, 288, 294, 300, 306, 314, 324, 332, 341, 351, 364, 377, 392,
                421, 405, 387, 373, 359, 351, 338, 327, 316, 306, 298, 291, 283, 280, 277, 272, 271, 271, 272, 275, 280, 287, 291, 298, 305, 312, 321, 330, 340, 352, 362, 375, 388,
                420, 403, 387, 372, 361, 349, 337, 325, 313, 301, 295, 286, 280, 274, 271, 269, 267, 266, 268, 270, 276, 281, 288, 296, 304, 312, 320, 329, 339, 351, 357, 373, 385,
                419, 402, 386, 373, 361, 349, 336, 322, 309, 298, 290, 283, 279, 271, 267, 265, 263, 262, 264, 267, 271, 278, 284, 292, 303, 311, 320, 328, 339, 351, 359, 371, 384,
                419, 401, 387, 374, 362, 346, 335, 319, 306, 295, 286, 280, 275, 268, 264, 262, 261, 260, 260, 264, 268, 273, 281, 290, 299, 310, 320, 328, 339, 351, 360, 372, 382,
                421, 404, 388, 374, 361, 346, 332, 317, 303, 292, 284, 276, 270, 266, 262, 261, 259, 258, 260, 261, 265, 271, 279, 287, 296, 308, 318, 327, 337, 350, 359, 371, 383,
                420, 405, 388, 376, 361, 344, 329, 315, 301, 290, 282, 275, 269, 263, 260, 258, 257, 256, 257, 258, 263, 268, 275, 283, 295, 305, 316, 327, 339, 349, 358, 371, 382,
                421, 409, 392, 375, 359, 344, 329, 314, 300, 290, 280, 274, 267, 263, 259, 257, 256, 256, 256, 257, 261, 267, 273, 281, 292, 304, 315, 327, 338, 350, 361, 371, 382,
                424, 411, 394, 375, 358, 342, 327, 312, 298, 288, 280, 273, 267, 262, 258, 257, 256, 256, 256, 257, 260, 266, 272, 280, 290, 301, 314, 327, 338, 350, 362, 372, 381,
                429, 412, 393, 374, 356, 341, 326, 312, 298, 288, 279, 272, 267, 261, 258, 257, 256, 256, 256, 257, 260, 266, 272, 280, 288, 299, 314, 325, 339, 351, 363, 374, 384,
                427, 413, 393, 374, 356, 340, 326, 311, 298, 287, 280, 273, 268, 263, 259, 257, 256, 256, 256, 257, 260, 266, 272, 280, 288, 298, 311, 325, 338, 351, 363, 376, 384,
                434, 414, 397, 375, 356, 339, 324, 310, 298, 288, 281, 275, 270, 264, 259, 256, 256, 256, 257, 259, 262, 266, 273, 279, 288, 299, 311, 325, 338, 351, 364, 377, 385,
                436, 415, 397, 374, 356, 341, 324, 309, 298, 288, 282, 275, 271, 266, 261, 258, 256, 256, 258, 260, 264, 268, 273, 280, 288, 299, 311, 325, 339, 353, 366, 379, 390,
                440, 418, 398, 375, 355, 338, 322, 311, 302, 290, 282, 278, 272, 267, 263, 260, 258, 258, 259, 262, 266, 270, 274, 281, 289, 299, 313, 326, 340, 353, 367, 380, 394,
                443, 419, 399, 377, 356, 338, 324, 311, 302, 292, 286, 279, 275, 269, 266, 262, 261, 260, 262, 264, 269, 272, 278, 284, 291, 301, 314, 327, 339, 353, 369, 384, 397,
                447, 423, 400, 377, 357, 341, 325, 311, 304, 295, 288, 281, 277, 271, 268, 264, 263, 263, 264, 267, 270, 275, 280, 287, 294, 303, 314, 327, 341, 355, 373, 386, 399,
                451, 427, 403, 380, 359, 342, 327, 315, 306, 298, 292, 284, 279, 275, 270, 267, 266, 266, 268, 271, 274, 279, 283, 289, 296, 306, 317, 330, 342, 359, 373, 390, 402,
                458, 431, 405, 383, 363, 346, 330, 317, 308, 300, 294, 287, 281, 278, 273, 270, 269, 270, 272, 274, 278, 282, 286, 291, 299, 308, 320, 332, 344, 358, 377, 394, 409,
                461, 435, 412, 385, 366, 349, 332, 320, 313, 304, 297, 290, 285, 281, 278, 274, 273, 273, 277, 279, 282, 287, 290, 296, 301, 311, 322, 333, 350, 363, 380, 398, 413,
                464, 437, 414, 389, 370, 352, 338, 325, 317, 308, 301, 294, 288, 285, 282, 278, 278, 279, 281, 283, 286, 290, 294, 298, 305, 313, 325, 337, 351, 365, 381, 402, 415,
                471, 444, 419, 395, 375, 356, 340, 329, 321, 313, 307, 298, 292, 289, 286, 283, 282, 283, 286, 287, 290, 295, 299, 302, 308, 317, 328, 340, 353, 368, 386, 406, 420,
                478, 454, 423, 399, 379, 359, 345, 336, 325, 316, 311, 303, 298, 292, 290, 287, 287, 289, 289, 292, 296, 299, 303, 306, 313, 322, 329, 343, 356, 372, 392, 412, 429,
                488, 459, 429, 404, 383, 365, 351, 338, 329, 321, 315, 307, 301, 298, 294, 292, 293, 293, 295, 297, 298, 301, 306, 309, 315, 327, 333, 346, 359, 376, 395, 419, 435,
                499, 469, 437, 411, 388, 369, 356, 342, 333, 326, 318, 311, 306, 305, 299, 298, 300, 299, 299, 299, 304, 306, 309, 314, 319, 329, 338, 352, 364, 381, 402, 427, 445,
                508, 477, 444, 418, 394, 373, 363, 346, 338, 329, 322, 316, 311, 307, 304, 304, 305, 305, 304, 304, 306, 309, 314, 317, 323, 332, 342, 353, 370, 386, 406, 430, 465
            },
        },

        {
            // Rgain:
            {
                560, 513, 476, 446, 421, 399, 382, 371, 356, 346, 337, 328, 322, 317, 313, 310, 308, 307, 308, 310, 313, 319, 325, 331, 338, 351, 360, 376, 391, 409, 433, 462, 492,
                546, 504, 464, 439, 415, 393, 376, 365, 352, 340, 333, 325, 319, 313, 309, 306, 304, 303, 304, 305, 309, 315, 320, 328, 334, 346, 355, 368, 383, 404, 425, 455, 480,
                526, 489, 456, 428, 408, 388, 370, 360, 346, 336, 328, 321, 316, 309, 305, 302, 301, 301, 301, 302, 305, 311, 316, 322, 331, 340, 351, 363, 376, 394, 417, 442, 466,
                512, 477, 444, 420, 402, 380, 366, 354, 343, 334, 326, 317, 310, 307, 302, 299, 298, 298, 298, 298, 302, 307, 311, 319, 327, 338, 345, 359, 370, 384, 407, 434, 457,
                501, 466, 438, 412, 396, 376, 364, 351, 340, 330, 321, 315, 308, 304, 299, 295, 295, 294, 295, 296, 300, 303, 309, 315, 322, 332, 340, 353, 366, 380, 400, 422, 447,
                490, 460, 430, 408, 390, 375, 361, 347, 335, 327, 318, 311, 307, 300, 297, 293, 291, 292, 292, 294, 296, 301, 307, 312, 319, 329, 338, 348, 360, 376, 393, 415, 438,
                483, 455, 425, 405, 385, 369, 355, 344, 334, 326, 316, 309, 302, 298, 293, 290, 288, 289, 289, 291, 294, 299, 304, 311, 317, 326, 336, 346, 357, 372, 388, 408, 428,
                476, 447, 423, 401, 381, 368, 353, 341, 332, 322, 312, 305, 299, 294, 288, 286, 284, 284, 286, 288, 290, 295, 302, 307, 314, 323, 334, 343, 354, 367, 385, 404, 423,
                472, 442, 418, 395, 379, 366, 351, 339, 328, 317, 308, 301, 294, 288, 284, 282, 279, 279, 280, 283, 287, 292, 298, 306, 313, 321, 330, 341, 352, 366, 382, 399, 420,
                470, 440, 416, 395, 377, 364, 350, 338, 326, 314, 304, 296, 290, 284, 279, 277, 275, 273, 275, 278, 283, 290, 296, 304, 311, 319, 329, 340, 351, 364, 377, 396, 415,
                462, 438, 411, 395, 377, 363, 349, 334, 321, 309, 301, 292, 285, 279, 274, 272, 270, 269, 270, 273, 279, 285, 292, 301, 309, 318, 328, 338, 351, 362, 376, 393, 409,
                461, 437, 410, 393, 376, 363, 346, 332, 318, 305, 296, 288, 283, 275, 271, 268, 265, 265, 267, 269, 275, 280, 287, 298, 307, 317, 326, 338, 349, 361, 373, 390, 409,
                459, 435, 410, 392, 376, 361, 343, 328, 314, 302, 292, 284, 280, 272, 268, 264, 262, 261, 263, 265, 270, 277, 283, 292, 304, 316, 324, 336, 348, 362, 373, 390, 406,
                459, 437, 410, 394, 376, 359, 341, 326, 311, 299, 290, 282, 274, 268, 265, 262, 260, 260, 259, 262, 267, 273, 281, 290, 300, 313, 324, 334, 348, 361, 373, 388, 406,
                459, 437, 411, 394, 375, 356, 339, 324, 309, 297, 288, 279, 273, 267, 262, 260, 260, 258, 258, 260, 265, 270, 278, 287, 297, 310, 322, 334, 348, 360, 375, 389, 404,
                459, 438, 413, 392, 373, 355, 337, 321, 308, 295, 286, 279, 271, 265, 261, 259, 258, 257, 257, 258, 262, 270, 276, 284, 295, 308, 321, 334, 348, 360, 375, 389, 404,
                460, 438, 413, 392, 372, 352, 336, 321, 307, 294, 285, 278, 271, 264, 260, 258, 257, 256, 256, 258, 262, 268, 275, 283, 294, 307, 320, 334, 348, 360, 374, 390, 406,
                460, 439, 413, 392, 370, 351, 334, 321, 306, 294, 285, 277, 270, 264, 261, 258, 257, 256, 256, 258, 261, 266, 274, 283, 293, 305, 319, 334, 348, 362, 375, 392, 406,
                466, 441, 413, 391, 370, 351, 334, 319, 306, 293, 285, 278, 271, 266, 261, 258, 258, 257, 256, 257, 262, 267, 274, 283, 292, 304, 318, 333, 348, 362, 377, 394, 406,
                470, 444, 417, 391, 369, 351, 332, 319, 305, 295, 286, 279, 273, 267, 262, 258, 258, 257, 258, 258, 263, 268, 274, 283, 292, 304, 318, 332, 349, 364, 379, 395, 410,
                470, 446, 418, 391, 369, 351, 333, 319, 305, 296, 287, 279, 275, 268, 263, 260, 258, 257, 258, 262, 263, 270, 275, 283, 293, 305, 318, 332, 349, 365, 380, 396, 411,
                477, 445, 420, 392, 368, 349, 332, 319, 310, 297, 289, 282, 276, 270, 265, 261, 260, 259, 261, 263, 266, 272, 277, 285, 294, 306, 319, 334, 350, 366, 383, 401, 417,
                481, 450, 421, 393, 371, 350, 334, 319, 310, 299, 292, 284, 278, 273, 268, 263, 262, 262, 263, 265, 269, 275, 280, 287, 295, 308, 321, 336, 351, 368, 385, 403, 420,
                486, 455, 423, 395, 371, 351, 335, 321, 311, 302, 295, 287, 281, 275, 270, 267, 264, 265, 266, 268, 273, 278, 283, 289, 299, 310, 323, 337, 352, 369, 388, 407, 423,
                492, 457, 424, 396, 374, 352, 337, 323, 314, 306, 296, 290, 284, 279, 274, 269, 268, 268, 270, 272, 276, 281, 286, 292, 302, 313, 326, 340, 355, 373, 391, 410, 429,
                496, 462, 429, 400, 376, 357, 339, 328, 317, 308, 301, 294, 287, 282, 277, 273, 272, 272, 275, 277, 280, 284, 290, 297, 305, 317, 328, 343, 358, 375, 395, 418, 435,
                502, 468, 437, 405, 379, 362, 343, 332, 320, 313, 306, 296, 291, 286, 282, 278, 276, 277, 279, 280, 284, 290, 294, 300, 309, 318, 332, 346, 362, 378, 398, 422, 441,
                510, 475, 440, 409, 384, 364, 349, 338, 326, 317, 308, 301, 294, 290, 285, 282, 279, 282, 283, 285, 289, 294, 297, 304, 313, 322, 335, 350, 366, 383, 404, 426, 446,
                520, 480, 444, 413, 391, 369, 352, 340, 332, 321, 313, 306, 299, 294, 290, 286, 285, 286, 287, 291, 293, 298, 302, 308, 315, 327, 338, 353, 368, 387, 408, 432, 452,
                533, 489, 451, 421, 396, 375, 360, 348, 336, 327, 319, 311, 303, 299, 294, 291, 290, 292, 292, 295, 297, 303, 307, 313, 320, 331, 343, 356, 373, 392, 413, 440, 462,
                540, 499, 461, 429, 402, 380, 363, 351, 340, 330, 323, 315, 308, 303, 300, 296, 296, 296, 299, 299, 302, 307, 311, 317, 324, 338, 346, 362, 378, 396, 420, 447, 469,
                557, 510, 470, 438, 410, 387, 370, 359, 347, 338, 328, 320, 314, 310, 304, 302, 303, 303, 303, 305, 307, 311, 316, 321, 330, 340, 352, 366, 383, 403, 428, 459, 483,
                566, 521, 480, 445, 416, 392, 377, 362, 351, 340, 331, 325, 317, 314, 309, 307, 309, 308, 308, 309, 311, 316, 320, 326, 333, 343, 355, 370, 388, 408, 434, 462, 508
            },

            // Grgain:
            {
                499, 460, 434, 411, 391, 376, 362, 353, 341, 333, 326, 319, 314, 309, 305, 303, 302, 301, 302, 303, 307, 310, 315, 322, 329, 337, 346, 358, 369, 387, 405, 427, 447,
                485, 454, 424, 404, 386, 370, 358, 348, 338, 329, 321, 316, 311, 306, 302, 300, 299, 298, 299, 301, 304, 307, 313, 319, 326, 333, 342, 353, 366, 382, 400, 420, 439,
                471, 444, 417, 397, 379, 365, 354, 344, 334, 326, 319, 312, 307, 303, 299, 297, 296, 295, 297, 297, 301, 304, 309, 314, 322, 330, 338, 348, 361, 374, 391, 411, 432,
                459, 434, 411, 390, 375, 361, 351, 341, 332, 322, 315, 309, 305, 301, 297, 294, 293, 292, 293, 294, 297, 302, 305, 312, 319, 327, 335, 345, 355, 368, 384, 402, 422,
                451, 427, 404, 385, 372, 358, 347, 337, 327, 320, 313, 307, 302, 299, 294, 292, 292, 291, 291, 292, 295, 298, 302, 309, 316, 323, 332, 340, 351, 363, 377, 396, 414,
                444, 422, 401, 384, 367, 354, 344, 333, 326, 318, 311, 305, 300, 295, 292, 289, 288, 288, 289, 291, 292, 297, 301, 307, 313, 321, 328, 338, 347, 360, 374, 391, 408,
                441, 416, 395, 382, 366, 353, 342, 332, 324, 316, 308, 302, 297, 293, 289, 287, 285, 286, 286, 288, 291, 294, 298, 304, 310, 320, 327, 335, 345, 356, 368, 386, 401,
                434, 413, 394, 376, 363, 352, 341, 330, 321, 313, 306, 301, 293, 289, 286, 283, 281, 281, 283, 284, 287, 292, 297, 303, 309, 316, 326, 334, 344, 353, 366, 382, 396,
                430, 411, 392, 375, 361, 351, 339, 328, 320, 312, 303, 296, 290, 285, 281, 278, 277, 277, 279, 281, 285, 289, 295, 301, 307, 314, 324, 333, 342, 353, 363, 378, 393,
                429, 409, 388, 375, 361, 350, 338, 327, 318, 307, 299, 292, 285, 280, 277, 274, 273, 271, 273, 276, 280, 286, 293, 299, 306, 313, 321, 331, 340, 352, 361, 375, 388,
                429, 406, 388, 374, 361, 350, 337, 325, 314, 303, 296, 287, 281, 277, 272, 269, 267, 267, 268, 272, 277, 283, 289, 297, 304, 313, 320, 330, 340, 350, 360, 373, 388,
                425, 404, 387, 374, 361, 348, 335, 323, 310, 299, 292, 283, 279, 273, 268, 265, 264, 262, 264, 267, 272, 278, 286, 293, 303, 311, 320, 328, 339, 349, 359, 373, 386,
                423, 404, 386, 374, 360, 347, 334, 320, 307, 297, 288, 280, 277, 269, 265, 262, 261, 260, 261, 264, 269, 274, 282, 291, 300, 310, 320, 328, 338, 349, 359, 370, 384,
                427, 406, 388, 374, 360, 346, 332, 318, 305, 294, 285, 278, 271, 266, 262, 260, 259, 258, 260, 261, 266, 271, 279, 288, 297, 309, 319, 327, 338, 348, 360, 369, 383,
                424, 407, 389, 375, 360, 345, 330, 315, 303, 292, 283, 276, 269, 264, 260, 258, 258, 257, 258, 259, 263, 269, 276, 286, 296, 306, 317, 328, 338, 350, 360, 370, 383,
                425, 407, 391, 374, 359, 343, 327, 314, 302, 290, 282, 275, 269, 263, 259, 257, 257, 256, 256, 257, 261, 267, 273, 282, 292, 303, 315, 327, 338, 349, 360, 370, 383,
                428, 409, 392, 375, 359, 342, 327, 313, 300, 289, 281, 274, 267, 262, 258, 257, 257, 256, 256, 257, 260, 266, 273, 281, 291, 302, 315, 327, 338, 350, 361, 373, 385,
                430, 411, 391, 375, 358, 341, 326, 312, 300, 288, 281, 273, 268, 262, 258, 257, 256, 256, 256, 257, 260, 265, 272, 280, 290, 301, 314, 326, 339, 350, 362, 374, 385,
                432, 412, 393, 375, 355, 340, 325, 311, 299, 289, 281, 274, 269, 263, 258, 257, 256, 256, 256, 258, 261, 266, 273, 280, 289, 300, 312, 326, 339, 351, 362, 376, 388,
                434, 414, 394, 373, 354, 339, 325, 310, 299, 289, 282, 275, 270, 265, 260, 257, 257, 256, 256, 258, 262, 266, 273, 281, 289, 299, 313, 325, 339, 352, 365, 377, 388,
                437, 416, 395, 373, 354, 339, 325, 310, 299, 290, 282, 277, 272, 265, 261, 257, 257, 256, 257, 260, 263, 268, 274, 281, 290, 300, 313, 326, 339, 353, 366, 379, 390,
                441, 418, 396, 373, 354, 338, 324, 310, 303, 291, 284, 278, 273, 268, 263, 260, 258, 258, 260, 262, 265, 270, 275, 282, 291, 301, 314, 326, 340, 353, 368, 382, 393,
                444, 421, 397, 375, 355, 338, 325, 312, 303, 293, 286, 280, 275, 270, 266, 262, 261, 260, 262, 264, 269, 273, 277, 284, 292, 302, 314, 327, 341, 355, 368, 384, 396,
                449, 423, 397, 377, 358, 338, 326, 313, 304, 296, 289, 282, 277, 272, 269, 265, 262, 264, 264, 268, 271, 275, 281, 287, 295, 304, 315, 328, 342, 355, 370, 387, 399,
                453, 425, 401, 378, 359, 341, 327, 316, 305, 299, 291, 285, 280, 274, 271, 268, 265, 266, 269, 271, 273, 278, 283, 289, 297, 307, 318, 331, 344, 358, 374, 390, 402,
                456, 430, 404, 382, 362, 345, 330, 318, 309, 302, 295, 288, 283, 278, 274, 270, 269, 270, 271, 275, 278, 282, 286, 292, 300, 309, 320, 332, 346, 361, 377, 394, 407,
                462, 434, 406, 384, 365, 347, 333, 321, 314, 305, 298, 291, 286, 282, 278, 274, 273, 275, 276, 278, 282, 286, 291, 296, 302, 312, 323, 335, 347, 362, 379, 398, 413,
                466, 437, 412, 388, 368, 351, 337, 325, 317, 309, 301, 295, 289, 285, 282, 279, 278, 279, 281, 283, 286, 291, 294, 298, 305, 315, 325, 339, 352, 365, 383, 403, 418,
                473, 445, 415, 392, 372, 355, 341, 330, 322, 313, 307, 299, 293, 289, 287, 283, 283, 283, 286, 287, 289, 293, 298, 302, 309, 319, 328, 341, 353, 369, 388, 408, 422,
                483, 452, 423, 397, 378, 359, 346, 335, 326, 318, 312, 303, 298, 293, 290, 288, 287, 288, 289, 291, 294, 298, 303, 306, 312, 323, 332, 344, 357, 374, 392, 412, 431,
                493, 460, 431, 403, 382, 364, 351, 339, 330, 321, 315, 309, 302, 298, 294, 293, 292, 293, 295, 296, 299, 302, 306, 310, 316, 328, 336, 347, 362, 378, 397, 420, 435,
                502, 470, 437, 411, 387, 370, 357, 344, 334, 326, 320, 313, 307, 304, 300, 298, 299, 298, 299, 300, 302, 306, 309, 313, 320, 329, 339, 353, 366, 383, 403, 425, 445,
                511, 475, 444, 414, 393, 374, 361, 346, 338, 329, 322, 317, 309, 307, 304, 302, 304, 303, 302, 303, 305, 308, 311, 317, 324, 333, 343, 355, 369, 387, 407, 432, 466
            },

            // Gbgain:
            {
                498, 465, 432, 410, 390, 375, 362, 352, 341, 332, 325, 320, 313, 308, 305, 303, 301, 301, 302, 303, 306, 312, 315, 321, 330, 338, 346, 357, 370, 387, 406, 427, 450,
                486, 455, 425, 404, 385, 371, 358, 347, 339, 330, 323, 317, 311, 307, 303, 300, 299, 298, 300, 301, 304, 308, 313, 319, 325, 333, 344, 353, 366, 382, 399, 421, 440,
                470, 444, 416, 397, 381, 366, 354, 345, 333, 326, 318, 313, 308, 303, 299, 297, 296, 296, 296, 297, 301, 304, 309, 315, 321, 330, 338, 348, 359, 375, 392, 412, 433,
                462, 434, 411, 392, 375, 362, 350, 340, 331, 322, 315, 310, 306, 301, 297, 294, 293, 292, 293, 295, 297, 301, 306, 311, 318, 326, 334, 345, 354, 369, 384, 403, 423,
                452, 429, 405, 387, 373, 358, 347, 338, 327, 320, 314, 308, 302, 298, 295, 292, 291, 291, 291, 292, 295, 300, 303, 309, 315, 324, 332, 341, 352, 363, 378, 396, 415,
                446, 422, 401, 384, 368, 355, 345, 334, 326, 318, 312, 306, 301, 296, 292, 290, 288, 288, 290, 290, 292, 297, 302, 307, 313, 321, 329, 338, 349, 360, 374, 389, 410,
                442, 418, 397, 382, 366, 353, 343, 332, 323, 316, 308, 302, 297, 293, 289, 286, 285, 285, 287, 287, 291, 294, 298, 305, 311, 319, 327, 336, 346, 356, 369, 386, 402,
                436, 413, 395, 376, 363, 353, 341, 331, 321, 314, 307, 301, 294, 291, 286, 282, 281, 281, 283, 285, 287, 292, 296, 303, 309, 317, 326, 333, 343, 354, 367, 382, 399,
                432, 411, 393, 375, 361, 351, 340, 329, 320, 312, 303, 296, 289, 285, 281, 278, 277, 277, 279, 281, 284, 290, 295, 301, 308, 314, 323, 333, 342, 353, 364, 378, 394,
                431, 410, 390, 375, 361, 350, 339, 327, 317, 307, 299, 292, 286, 280, 277, 274, 273, 271, 273, 277, 280, 286, 292, 299, 306, 314, 321, 332, 341, 351, 362, 376, 391,
                426, 408, 388, 374, 361, 351, 337, 325, 313, 304, 295, 288, 281, 277, 272, 270, 267, 267, 268, 272, 276, 281, 289, 297, 304, 313, 320, 330, 340, 350, 361, 374, 387,
                424, 405, 389, 374, 361, 350, 336, 324, 311, 299, 291, 284, 280, 272, 268, 266, 264, 262, 264, 268, 272, 279, 286, 294, 303, 313, 320, 330, 340, 349, 360, 372, 386,
                424, 405, 390, 375, 362, 348, 333, 321, 307, 296, 288, 281, 277, 269, 265, 262, 261, 261, 262, 264, 269, 275, 282, 291, 301, 310, 319, 329, 339, 349, 359, 373, 384,
                426, 407, 389, 376, 362, 347, 332, 319, 304, 295, 286, 278, 271, 266, 264, 261, 260, 259, 259, 261, 266, 271, 278, 287, 297, 309, 318, 329, 338, 350, 360, 371, 386,
                424, 407, 391, 375, 361, 345, 330, 316, 303, 292, 284, 276, 269, 265, 261, 259, 258, 257, 257, 258, 264, 269, 276, 285, 295, 306, 318, 328, 338, 349, 360, 372, 385,
                427, 409, 392, 375, 359, 344, 328, 314, 302, 292, 282, 275, 269, 264, 260, 257, 256, 256, 256, 258, 261, 268, 273, 282, 292, 305, 317, 328, 338, 349, 362, 373, 384,
                429, 410, 392, 376, 359, 342, 327, 313, 301, 289, 281, 274, 268, 262, 259, 257, 257, 256, 256, 257, 261, 266, 273, 282, 291, 302, 315, 327, 338, 351, 361, 374, 385,
                431, 411, 393, 375, 359, 341, 327, 313, 301, 289, 281, 274, 268, 263, 259, 257, 257, 256, 256, 258, 261, 266, 273, 281, 289, 300, 313, 326, 339, 351, 361, 375, 386,
                435, 413, 395, 374, 357, 340, 325, 313, 299, 289, 282, 275, 269, 263, 259, 256, 257, 256, 256, 257, 261, 266, 273, 280, 289, 300, 313, 325, 339, 352, 364, 376, 387,
                435, 415, 395, 375, 357, 341, 325, 313, 299, 291, 282, 276, 270, 264, 260, 257, 256, 256, 256, 259, 262, 267, 273, 279, 289, 300, 313, 325, 339, 353, 366, 377, 391,
                438, 418, 396, 374, 355, 340, 325, 311, 300, 290, 283, 278, 272, 266, 261, 258, 257, 256, 257, 260, 264, 269, 274, 281, 291, 301, 313, 326, 339, 354, 367, 379, 392,
                443, 420, 397, 375, 355, 338, 324, 311, 305, 292, 284, 279, 273, 268, 264, 260, 259, 258, 259, 263, 266, 270, 275, 282, 291, 302, 314, 327, 340, 355, 368, 382, 393,
                445, 422, 399, 376, 356, 339, 325, 313, 303, 293, 287, 281, 275, 270, 266, 262, 261, 260, 261, 264, 269, 272, 277, 284, 292, 302, 314, 327, 341, 355, 370, 385, 398,
                452, 424, 400, 378, 357, 341, 326, 314, 305, 296, 289, 283, 278, 273, 268, 265, 264, 263, 264, 268, 271, 276, 281, 286, 294, 304, 315, 329, 343, 358, 374, 387, 402,
                454, 426, 403, 381, 359, 343, 327, 316, 307, 300, 292, 286, 280, 275, 272, 268, 266, 267, 268, 270, 274, 279, 284, 290, 297, 307, 318, 331, 344, 359, 375, 391, 405,
                458, 432, 405, 382, 362, 345, 331, 319, 309, 302, 296, 288, 282, 278, 274, 271, 270, 270, 273, 275, 278, 282, 287, 292, 299, 309, 320, 333, 347, 361, 376, 395, 409,
                463, 435, 410, 385, 366, 348, 333, 322, 313, 306, 299, 292, 287, 281, 279, 275, 273, 274, 277, 278, 282, 286, 290, 296, 302, 313, 323, 336, 350, 364, 382, 399, 413,
                466, 441, 413, 390, 369, 352, 337, 326, 318, 309, 302, 295, 290, 286, 283, 279, 278, 279, 282, 283, 286, 291, 294, 299, 305, 315, 326, 338, 352, 367, 384, 404, 418,
                476, 447, 418, 394, 374, 357, 340, 331, 321, 313, 308, 299, 294, 289, 287, 284, 283, 283, 286, 287, 290, 295, 299, 303, 309, 318, 329, 341, 355, 370, 387, 407, 424,
                483, 456, 424, 400, 377, 360, 347, 336, 326, 318, 313, 303, 298, 293, 290, 287, 287, 288, 291, 292, 293, 298, 302, 307, 313, 323, 332, 345, 358, 374, 392, 413, 430,
                493, 462, 431, 405, 383, 365, 352, 340, 330, 322, 316, 308, 303, 298, 295, 293, 292, 294, 294, 296, 298, 303, 306, 311, 315, 328, 336, 349, 362, 378, 397, 420, 437,
                507, 470, 438, 412, 388, 370, 357, 345, 334, 327, 320, 313, 307, 304, 300, 299, 299, 300, 299, 300, 302, 306, 310, 314, 320, 330, 339, 352, 367, 384, 403, 426, 446,
                515, 475, 444, 416, 393, 374, 360, 349, 339, 329, 323, 317, 311, 309, 304, 303, 304, 303, 302, 304, 306, 309, 313, 317, 324, 333, 343, 356, 370, 389, 406, 431, 469
            },

            // Bgain:
            {
                483, 452, 424, 404, 385, 373, 358, 351, 341, 332, 324, 317, 311, 307, 304, 302, 301, 299, 301, 303, 306, 309, 315, 322, 329, 335, 344, 356, 368, 384, 402, 423, 443,
                474, 444, 419, 399, 380, 367, 354, 345, 338, 329, 320, 315, 309, 305, 302, 299, 299, 296, 298, 300, 302, 306, 310, 317, 326, 332, 341, 351, 363, 378, 394, 417, 435,
                459, 434, 412, 392, 377, 363, 352, 341, 332, 324, 317, 310, 308, 302, 298, 295, 295, 294, 296, 296, 299, 303, 308, 313, 320, 329, 337, 346, 357, 371, 387, 407, 424,
                449, 426, 404, 385, 372, 358, 348, 338, 329, 322, 315, 309, 304, 299, 296, 294, 294, 292, 292, 294, 297, 299, 304, 309, 318, 325, 333, 342, 354, 365, 382, 399, 419,
                440, 423, 399, 381, 369, 355, 345, 335, 327, 318, 313, 307, 304, 298, 295, 291, 291, 290, 291, 291, 295, 297, 303, 307, 316, 322, 330, 341, 350, 361, 377, 392, 411,
                435, 417, 395, 380, 365, 353, 342, 332, 325, 317, 310, 305, 301, 296, 292, 288, 287, 288, 288, 289, 291, 296, 301, 306, 313, 320, 329, 337, 346, 358, 371, 387, 404,
                430, 412, 392, 377, 363, 352, 341, 330, 322, 315, 308, 302, 297, 292, 288, 286, 283, 285, 286, 287, 288, 295, 298, 304, 310, 317, 326, 333, 344, 354, 369, 383, 399,
                427, 409, 393, 374, 360, 351, 341, 329, 320, 314, 307, 299, 295, 288, 285, 282, 281, 281, 282, 284, 287, 291, 296, 301, 308, 316, 326, 333, 342, 352, 364, 379, 394,
                423, 410, 388, 372, 359, 349, 338, 329, 319, 309, 302, 296, 290, 286, 281, 278, 275, 277, 279, 280, 283, 288, 294, 300, 306, 314, 324, 332, 341, 351, 364, 377, 392,
                421, 405, 387, 373, 359, 351, 338, 327, 316, 306, 298, 291, 283, 280, 277, 272, 271, 271, 272, 275, 280, 287, 291, 298, 305, 312, 321, 330, 340, 352, 362, 375, 388,
                420, 403, 387, 372, 361, 349, 337, 325, 313, 301, 295, 286, 280, 274, 271, 269, 267, 266, 268, 270, 276, 281, 288, 296, 304, 312, 320, 329, 339, 351, 357, 373, 385,
                419, 402, 386, 373, 361, 349, 336, 322, 309, 298, 290, 283, 279, 271, 267, 265, 263, 262, 264, 267, 271, 278, 284, 292, 303, 311, 320, 328, 339, 351, 359, 371, 384,
                419, 401, 387, 374, 362, 346, 335, 319, 306, 295, 286, 280, 275, 268, 264, 262, 261, 260, 260, 264, 268, 273, 281, 290, 299, 310, 320, 328, 339, 351, 360, 372, 382,
                421, 404, 388, 374, 361, 346, 332, 317, 303, 292, 284, 276, 270, 266, 262, 261, 259, 258, 260, 261, 265, 271, 279, 287, 296, 308, 318, 327, 337, 350, 359, 371, 383,
                420, 405, 388, 376, 361, 344, 329, 315, 301, 290, 282, 275, 269, 263, 260, 258, 257, 256, 257, 258, 263, 268, 275, 283, 295, 305, 316, 327, 339, 349, 358, 371, 382,
                421, 409, 392, 375, 359, 344, 329, 314, 300, 290, 280, 274, 267, 263, 259, 257, 256, 256, 256, 257, 261, 267, 273, 281, 292, 304, 315, 327, 338, 350, 361, 371, 382,
                424, 411, 394, 375, 358, 342, 327, 312, 298, 288, 280, 273, 267, 262, 258, 257, 256, 256, 256, 257, 260, 266, 272, 280, 290, 301, 314, 327, 338, 350, 362, 372, 381,
                429, 412, 393, 374, 356, 341, 326, 312, 298, 288, 279, 272, 267, 261, 258, 257, 256, 256, 256, 257, 260, 266, 272, 280, 288, 299, 314, 325, 339, 351, 363, 374, 384,
                427, 413, 393, 374, 356, 340, 326, 311, 298, 287, 280, 273, 268, 263, 259, 257, 256, 256, 256, 257, 260, 266, 272, 280, 288, 298, 311, 325, 338, 351, 363, 376, 384,
                434, 414, 397, 375, 356, 339, 324, 310, 298, 288, 281, 275, 270, 264, 259, 256, 256, 256, 257, 259, 262, 266, 273, 279, 288, 299, 311, 325, 338, 351, 364, 377, 385,
                436, 415, 397, 374, 356, 341, 324, 309, 298, 288, 282, 275, 271, 266, 261, 258, 256, 256, 258, 260, 264, 268, 273, 280, 288, 299, 311, 325, 339, 353, 366, 379, 390,
                440, 418, 398, 375, 355, 338, 322, 311, 302, 290, 282, 278, 272, 267, 263, 260, 258, 258, 259, 262, 266, 270, 274, 281, 289, 299, 313, 326, 340, 353, 367, 380, 394,
                443, 419, 399, 377, 356, 338, 324, 311, 302, 292, 286, 279, 275, 269, 266, 262, 261, 260, 262, 264, 269, 272, 278, 284, 291, 301, 314, 327, 339, 353, 369, 384, 397,
                447, 423, 400, 377, 357, 341, 325, 311, 304, 295, 288, 281, 277, 271, 268, 264, 263, 263, 264, 267, 270, 275, 280, 287, 294, 303, 314, 327, 341, 355, 373, 386, 399,
                451, 427, 403, 380, 359, 342, 327, 315, 306, 298, 292, 284, 279, 275, 270, 267, 266, 266, 268, 271, 274, 279, 283, 289, 296, 306, 317, 330, 342, 359, 373, 390, 402,
                458, 431, 405, 383, 363, 346, 330, 317, 308, 300, 294, 287, 281, 278, 273, 270, 269, 270, 272, 274, 278, 282, 286, 291, 299, 308, 320, 332, 344, 358, 377, 394, 409,
                461, 435, 412, 385, 366, 349, 332, 320, 313, 304, 297, 290, 285, 281, 278, 274, 273, 273, 277, 279, 282, 287, 290, 296, 301, 311, 322, 333, 350, 363, 380, 398, 413,
                464, 437, 414, 389, 370, 352, 338, 325, 317, 308, 301, 294, 288, 285, 282, 278, 278, 279, 281, 283, 286, 290, 294, 298, 305, 313, 325, 337, 351, 365, 381, 402, 415,
                471, 444, 419, 395, 375, 356, 340, 329, 321, 313, 307, 298, 292, 289, 286, 283, 282, 283, 286, 287, 290, 295, 299, 302, 308, 317, 328, 340, 353, 368, 386, 406, 420,
                478, 454, 423, 399, 379, 359, 345, 336, 325, 316, 311, 303, 298, 292, 290, 287, 287, 289, 289, 292, 296, 299, 303, 306, 313, 322, 329, 343, 356, 372, 392, 412, 429,
                488, 459, 429, 404, 383, 365, 351, 338, 329, 321, 315, 307, 301, 298, 294, 292, 293, 293, 295, 297, 298, 301, 306, 309, 315, 327, 333, 346, 359, 376, 395, 419, 435,
                499, 469, 437, 411, 388, 369, 356, 342, 333, 326, 318, 311, 306, 305, 299, 298, 300, 299, 299, 299, 304, 306, 309, 314, 319, 329, 338, 352, 364, 381, 402, 427, 445,
                508, 477, 444, 418, 394, 373, 363, 346, 338, 329, 322, 316, 311, 307, 304, 304, 305, 305, 304, 304, 306, 309, 314, 317, 323, 332, 342, 353, 370, 386, 406, 430, 465
            },

        },
    },

    /* ISP_BNR_LSC_CALIB_TABLE_S */
    {
        // RGain
        {
            4096,   4103,   4132,   4157,   4175,   4220,   4250,   4296,   4328,   4371,
            4398,   4419,   4443,   4476,   4520,   4535,   4562,   4605,   4643,   4682,
            4691,   4726,   4761,   4772,   4786,   4821,   4880,   4887,   4909,   4932,
            4954,   5000,   5024,   5031,   5079,   5107,   5118,   5140,   5163,   5224,
            5171,   5237,   5316,   5327,   5317,   5306,   5391,   5365,   5395,   5433,
            5440,   5490,   5529,   5566,   5596,   5596,   5656,   5629,   5668,   5698,
            5715,   5745,   5860,   5788,   5796,   5826,   5841,   5862,   5908,   5952,
            6000,   6048,   6015,   6084,   6159,   6157,   6096,   6208,   6201,   6266,
            6300,   6344,   6365,   6334,   6429,   6521,   6491,   6495,   6558,   6585,
            6646,   6806,   6775,   6703,   6803,   6859,   6911,   6932,   6969,   7011,
            7027,   7137,   7169,   7236,   7281,   7229,   7209,   7387,   7384,   7445,
            7574,   7577,   7640,   7722,   7771,   7745,   7894,   7921,   7969,   7945,
            8098,   8177,   8216,   8245,   8434,   8590,   8573,   8580,   8627
        },
        // GrGain
        {
            4110,   4096,   4121,   4151,   4183,   4211,   4242,   4283,   4316,   4346,
            4359,   4395,   4422,   4436,   4478,   4487,   4535,   4552,   4589,   4612,
            4656,   4668,   4692,   4698,   4739,   4765,   4775,   4846,   4813,   4848,
            4885,   4902,   4902,   4913,   4945,   4968,   4967,   5014,   5032,   5055,
            5118,   5088,   5144,   5190,   5183,   5191,   5204,   5216,   5280,   5293,
            5302,   5332,   5344,   5389,   5372,   5421,   5429,   5446,   5483,   5508,
            5555,   5593,   5529,   5557,   5568,   5617,   5705,   5645,   5704,   5701,
            5713,   5790,   5784,   5827,   5834,   5859,   5870,   5901,   5877,   5959,
            6012,   6009,   6066,   6062,   6127,   6136,   6193,   6222,   6257,   6263,
            6288,   6319,   6329,   6350,   6362,   6410,   6451,   6513,   6557,   6588,
            6614,   6597,   6690,   6741,   6785,   6729,   6783,   6851,   6882,   6897,
            6964,   6996,   7058,   7090,   7112,   7174,   7184,   7236,   7318,   7261,
            7325,   7408,   7466,   7574,   7682,   7817,   7723,   7770,   7797
        },
        // GbGain
        {
            4096,   4106,   4122,   4157,   4180,   4205,   4242,   4278,   4318,   4360,
            4381,   4402,   4425,   4457,   4471,   4488,   4527,   4550,   4587,   4611,
            4634,   4666,   4694,   4715,   4735,   4751,   4802,   4816,   4858,   4889,
            4878,   4885,   4906,   4936,   4972,   4989,   4996,   5043,   5055,   5054,
            5087,   5118,   5152,   5134,   5197,   5221,   5240,   5242,   5291,   5291,
            5294,   5335,   5365,   5376,   5369,   5431,   5431,   5499,   5468,   5503,
            5503,   5539,   5550,   5601,   5593,   5639,   5652,   5667,   5690,   5754,
            5734,   5805,   5837,   5852,   5886,   5841,   5900,   5946,   5959,   5982,
            6017,   6048,   6066,   6076,   6162,   6108,   6133,   6175,   6258,   6274,
            6263,   6312,   6333,   6378,   6391,   6424,   6462,   6527,   6520,   6580,
            6577,   6629,   6755,   6673,   6772,   6817,   6774,   6868,   6904,   6946,
            7037,   7015,   7027,   7039,   7096,   7165,   7227,   7327,   7302,   7372,
            7363,   7433,   7530,   7543,   7661,   7810,   7800,   7721,   7855
        },
        // BGain
        {
            4096,   4112,   4137,   4155,   4189,   4225,   4257,   4280,   4315,   4351,
            4387,   4398,   4434,   4481,   4504,   4495,   4523,   4540,   4616,   4598,
            4645,   4663,   4692,   4682,   4752,   4774,   4782,   4861,   4851,   4866,
            4849,   4869,   4952,   4956,   4948,   5000,   5045,   5044,   5084,   5066,
            5077,   5099,   5126,   5158,   5147,   5229,   5276,   5257,   5262,   5283,
            5368,   5332,   5336,   5381,   5420,   5412,   5468,   5549,   5492,   5525,
            5549,   5564,   5603,   5578,   5656,   5600,   5626,   5616,   5709,   5690,
            5731,   5759,   5796,   5855,   5885,   5864,   5959,   5904,   6015,   5915,
            5978,   5976,   6021,   6063,   6136,   6142,   6163,   6212,   6232,   6246,
            6290,   6329,   6348,   6327,   6365,   6452,   6487,   6434,   6478,   6563,
            6643,   6652,   6673,   6685,   6744,   6720,   6861,   6778,   6890,   6946,
            6836,   6958,   7128,   7083,   7096,   7149,   7173,   7168,   7283,   7345,
            7291,   7353,   7460,   7434,   7636,   7758,   7649,   7636,   7688
        },
    },

};

static const ISP_CMOS_CLUT_S g_stIspCLUT = {
    1,
    128,
    128,
    128,
    {
        {
            0,          0, 1073740805,          0,    1049598,    3148794,    2100218,    4199408,    5247984,
            8397794,    8398816,   12599241,   12598223,   15751093,   17850285,   23102348,   19954581,   24159090,
            27306857,   31512388,   28364620,   32570148,   35716896,   38872829,   36776700,   40982230,   43078361,
            47282868,   45186736,   49392267,   51488399,   55692906,   53597798,          1,   59898437,          1,
            1072690186,    6299622, 1071640592,    7351260,    2101238,   16800690,    3150833,   19951518,   10500047,
            29404008,   13650880,   33607499,   23101327,   38863643,   26255222,   44116730,   34659136,   45175511,
            38862625,   51476149,   42019576,   53583507,   47272662,   59885169,   49378998,   61993546,   55680660,
            69343784,   57789039,    1047555,   64089677, 1073739782,   67247653,    9450451,   73548291,    9453515,
            1070588952,   22053773, 1069538337,   23106431,    4200429,   36759350,    4201450,   37812006,   14702515,
            48318177,   15755175,   50420429,   29406050,   56728216,   30458707,   61978237,   43063050,   66185809,
            45165305,   71437873,   52523707,   75644422,   56724132,   81946113,   60932724, 1073738761,   66183767,
            1072689165,   70390316,   10504132,   76691979,   10505151,   80898561,   24158067,   87200257,   24161128,
            1067438122,   39913240, 1066387506,   37819146,    4202472,   53571260,    4202471,   55673516,   16806813,
            66179685,   16808853,   69331535,   30462790,   77737491,   31514426,   82988545,   46217962,   89295361,
            48319195,   95597057,   59875984, 1072688144,   63026813, 1071639571,   71434812,   10507194,   76684834,
            10508213,   82992641,   24164190,   89293313,   23118675,   94550529,   37823228,  101901825,   35729134,
            1065336890,   58824347, 1064286274,   49390214,    4202469,   73531961,    4203492,   77732387,   16810892,
            88239617,   16812933,   93490689,   30468910,  101898753,   29424417,  108199425,   44128970, 1071638550,
            43084474, 1070588953,   66177642,    9460656,   68280918,    8413100,   80886281,   22072137,   85087745,
            19978047,   95593985,   33636063,  100845057,   30494416,  109252097,   46248563,  116603393,   42058336,
            1063235656,   75641355, 1062185038,   52574721,    3154915,   98741761,    3154915,  102944257,   15766397,
            115549697,   13671286,  121850369,   27330325, 1069539355,   25236232, 1069539357,   39941801,    7365544,
            35751576,    5269412,   52554301,   16835381,   47316519,   13691691,   90337793,   26303169,   80905729,
            21064370,  107145729,   35770956,  112397825,   28436024,  122905089,   45238785,  130255361,   34758145,
            1061134420,   83024385, 1060084825,   42128897,    2106338,  128152065,    2107361,  133404161,   11576175,
            1068489760,    9481064, 1068489762,   21044987,    4221856,   16853742,    2125724,   30512775,    9499425,
            24225397,    4259608,   39980561,   14775971,   31597057,    7440020,   49448449,   19002916,   38967809,
            9569808,  117648897,   24277505,   81997313,   12748289,  137605633,   29551105,  143908353,   14876161,
            1059034207,   76776961, 1056936036,   17004033,    1058784, 1067440164,    1058783,          0,    6337377,
            29593,    3192666,    2099195,   11613922,      67342,    6374102,    5250028,   16889443,     103045,
            8504914,   11550667,   22164993,     136705,   11683329,   18907026,   26390017,     169473,   13812225,
            25215830,   31663617,     201217,   15940097,   31523616,  134477313,     231937,   67361281,   37830378,
            1055886441,       2046,          0, 1073740802,      10207,    2099197,       1023,    2101238,      48979,
            3148794,    3149813,    9451474,      85705,    3149813,    8398814,   22052753,     120385,    9454534,
            14702517,   31510345,     154113,   19962746,   23110515,   36768534,     185857,   26271551,   28369723,
            43075296,     216577,   31528716,   34676485,   50432678,     246273,          1,   40983248, 1073739784,
            2045,    2100217, 1073740805,    2102258,    1049598,    7350238,       1022,   12603324,    2099196,
            18900900,    5251048,   25207667,    3148792,   28357474,   14702518,   35714855,    4201451,   31516469,
            28355435,   46221026,   14709662,   37823232,   33615663,   54628001,   23117659,   44131017,   39921404,
            63036000,   29424421, 1073740804,   47278787, 1070588953,   34682611,    2101236,   54635145,    4202471,
            1073740802,   10503111, 1071639570,   14706597,          0,   23105410,          0,   26263382,    4200430,
            33612600,    7351258,   40967941,   12600262,   40971003,   18904985,   53573300,   25202563,   49375936,
            30460748,   65131110,   29413195,   56734339,   40967940,   76686873,   33621788, 1071639568,   50424514,
            1067438122,   40977124,    3151853,   58831489,    4204511,   47284909,   13654961,   68288063,   14712719,
            1072690185,   26260325, 1066388527,   26270520,       1023,   38865686,          2,   37829341,    6301665,
            49372875,    8404936,   60926599,   16803751,   59879043,   19960702,   75633196,   29408091,   70386236,
            34664238,   89290241,   37816088, 1069538338,   47270620, 1065336890,   45173470,    4203490,   59877005,
            3156956,   52530850,   14709658,   71433791,   13668220,   60937828,   26266439,   81940993,   23130906,
            1069538335,   44118772, 1062185039,   32594613,          1,   57774750, 1073740805,   43106894,    7354322,
            70382153,    9458616,   86135297,   18908043,   82988545,   21015396,  101893633,   32563005, 1066387506,
            32574219, 1062186057,   44119792,    4204509,   53574324,    2108379,   54625959,   14714757,   68279897,
            9476972,   65132128,   25225001,   82986497,   15796989,   75639321,   35736266,   96643585,   23164556,
            1064286272,   65128047, 1056935017,   29483546,    1047555,   80884239, 1072690187,   35802625,    9456575,
            95591937,    8412076,  114496001,   21012337, 1063237698,   17875788, 1059036248,   32570140,    3156955,
            28387048,    1059803,   50422473,   11573108,   37850754,    3188573,   64078451,   19988235,   72487459,
            5317344,   76685855,   28404385,   93490689,    8492644,   89292289,   36819508,  110296577,   10618369,
            1059035228,   76702209, 1052733568,   12743169, 1073739784,  108195329, 1071639570,   14866945,    9459634,
            1061135440,    5268388,    1051642,   19969880,    1059803,   12636981,          0,   30480122,    6333285,
            18956997,    1047554,   42039961,   11605742,   26324563,    2100215,   72481343,   15828600,   32643585,
            7353300,   88238593,   21099009,   76722689,   12607405,  102945281,   25320961,  123949569,   15763339,
            1054833781,   73597441, 1049581718,   19966827, 1071640591, 1057985631, 1069540377, 1072693249,    7364520,
            11227,    2124700, 1073740804,   15780672,      44886,    4253471,    1051642,   24195798,      76498,
            7428770,    7352280,   32611947,     107088,    9555494,   15756196,   41027073,     136705,   11680257,
            22060919,   99791361,     164353,   13805057,   27316045,  117647873,     192001,   67325441,   32570148,
            1051681931,    1052662,    1052662, 1072689165, 1070589974,    1050622,       2045, 1073739784,    4220832,
            1046534,    1047554,    3151854,    8444713, 1073738759,    1048576,   12604346,   13717171,    2103280,
            4202472,   22057855,   17940028,    7356362,   10505152,   29414214,   23210497,   10512298,   14709660,
            37819153,   27432449,   13665167,   17865595,   45173468,  130252289,       2046,   21020508, 1068487718,
            1047481504,    1047554,       1022, 1073739784, 1068490781,    1049598, 1073740804,    5254108,      27544,
            5251048,          1,   14708639,      61204,   12603323,    4200429,   27310940,      91793,   16809873,
            11553726,   37816088,     122383,   22063980,   18909068,   47272662,     151041,   26268488,   24164194,
            57777812,     178689, 1073739782,   29418297, 1064286273,     205313, 1073739782,   34673423, 1073739784,
            2102258,    2101236, 1071640591,    7356361,    1051642,   10503112, 1072690188,   16811906,    1047554,
            18907025,       1023,   26269492, 1073738760,   26262366,    7353302,   45169385,       1023,   32567087,
            16806813,   57775770,    5254109,   38871808,   26260322,   70381132,    9458617, 1070588952,   33616683,
            1059035228,   12613532, 1072690185,   40972023, 1072690188,   14717826,    4202470,   48327362,    7359418,
            1051642,   13655981, 1066387507,   15769445,          1,   24160110, 1070588952,   24180491,          1,
            33615663,    2101237,   33640111,    2100215,   43070195,   10505151,   68278878,    8402898,   51476152,
            21010302,   82984452,   14707621, 1066386484,   32564026, 1054833781,   18913150, 1073739784,   43069175,
            1071639571,   24166234,    6304722,   52524725,    5264302,   28370742,   15760272,   63029875,   11580233,
            1073740805,   29413194, 1059035229,   17896162, 1073739783,   40968961, 1068488741,   23163513,          0,
            52523704,    3152873,   29478415,    6301665,   64079472,   11559846,   95588865,   14704557, 1061136463,
            21016412, 1050632333,   23109494, 1072690186,   38866705, 1069540378,   29414214,    7357377,   51473090,
            2120612,   35719960,   16814963,   64078451,    4245295,   42024681,   26273568,   76683813,    6367929,
            1069538335,   49370833, 1052732547,    8490564, 1071639569,   63026813, 1065337908,   10612225,    1050620,
            76682792,    3153892,   12733953,    8404938, 1056935016,   11564944,    2103278,   18908046, 1071640591,
            19974968,       2046,   29412174,    6311860,   28386014, 1072690186,   37818129,   13675351,   60925580,
            1072690185,   47272662,   21038839,   75631153, 1073739779,   55678619,   29450900,   90337793,       2046,
            1062187080,   69334590, 1046430886,    1052661, 1069538334,   89286145, 1063236676,    1055725,    2103278,
            1052733569,    2106337,       1023,   11556786, 1070589974,    8422268, 1072690185,   21012333,    3168169,
            14738198, 1072689165,   35714854,    8436540,   21054126,    1047554,   47270620,   12656334,   26320452,
            3151853,   58826388,   16875103,   72498689,    7354323,   69332556,   21093889,  103991809,   10507194,
            1055883377,   71468545, 1041178823,   13659043, 1067437101, 1048532121, 1060086867, 1071639571,    3153894,
            1068490781,    1057759, 1071639570,   11561883,      24479,    3182441, 1072689166,   21020490,      53026,
            5307124,    2101237,   30479093,      79526,    7429759,    8403920,   55674535,     106026,    9551369,
            14706599,   69330514,     130561,   11673089,   19960703,   82986497,     155137,   67293697,   26263385,
            1049581717,    4202470,    3153893, 1065337909, 1064287292,    1051641,    1052662, 1068489761,    2106338,
            1073739783, 1073740805, 1073739784,    9468806, 1072689163, 1072689163,    4203489,   17880871, 1072687116,
            1073739780,   13655983,   25244358, 1070586892,    1047553,   22059897,   33656418, 1070584840,       3066,
            30463812,   80884240, 1069536258,    1053681,   38867727,   96640513,    1052662,    1056744, 1059036250,
            1044329655, 1073740804,       3066, 1066388527, 1061137484, 1072690187, 1073740804,       1023,    1057760,
            1073739782, 1072690188,    7355336,    5278578,    1051641, 1072690185,   15760265,   10546949,    3153896,
            1051640,   29413194,   14765718,    5255128,    5253088,   39918343,   18984487,    7357384,    9454534,
            51472069,   23203329, 1072691208,   12607406, 1053783166,  110294529, 1072689166,   14711703, 1064287292,
            1038027991, 1072689166, 1070589975,    1051639, 1059035227,    1050621, 1071640591,    8410030,       9183,
            5253087, 1071639570,   15768417,      38752,   10506173, 1073740804,   24176400,      66276,   15758237,
            5252067,   50421450,      92776,   19961726,   11554747,   64076411,     118273, 1068488739,   17858451,
            1047481505,     142849, 1070588954,   23112556, 1062186058,     167425, 1072690188,   29415238,    1053682,
            5254108,    3152876, 1064286271,    6316950,    2103279,   10505152, 1067438123,   11581241,          1,
            17858448, 1070589974,   17893082, 1072689163,   25212769,    1051639,   23156345, 1072689162,   32566068,
            9453513,   75632176, 1071636493, 1062187079,   17857428, 1042228419, 1070585866, 1067439144,   26262366,
            1059036248, 1069536261, 1073740804,   34666281,       5101, 1069536256,    6303701,   43069173,    2126719,
            2103279,   15758238, 1055884399,    4246290,       2046,   26261346, 1063236677,    6365860, 1072691209,
            35714854, 1070588952,    8484406, 1072690186,   45169386,    3153892,   10603009,          0, 1056933996,
            11557801,    4204510,    2102257, 1065337909,   24161131,       3066,    4204512,       2043,   34666281,
            1071639569,    6306768,    8406971,   46218982, 1068488740,    8408000,   15764341,   56724132, 1064280109,
            1072691207,   33614642, 1048530079, 1060069423, 1072690186,   45170409, 1059035229, 1055857699, 1071640592,
            57773728, 1070588954, 1052694541, 1073739783, 1050632335,    4206547,       2045,    3151855, 1063236674,
            11564936, 1071640591,    8403918,    1052660,   19972921, 1069539358,   13657004,    7363490,   44118770,
            1068487719,   17859469,   14723917,   56724130, 1065334818,   22062958,   21034741,   70379091, 1064283161,
            1067438121,   55673515, 1040129228, 1064281102, 1069539358,   70378069, 1054833781, 1064280068, 1071638548,
            1044330674, 1069539358, 1068489759,          0, 1061135441,    3161028, 1068488740,    7353303,       5103,
            9472872, 1067439144,   14706600,    4221835,   14737162, 1068488740,   22059897,    8437541,   21049002,
            1069538321,   29413195,   12654271,   67229277,          0,   35717917,   16868951,   84034050,    4201451,
            1060085846,   69343749, 1032775928,    7353301, 1065336888, 1039077588, 1050632333, 1062187080, 1070589975,
            1057985631, 1068488739, 1064287292,    2103278,       6123,    1065910, 1066388526,   10506169,      31604,
            3186505, 1070588954,   21009280,      55039,    5306075,    1051642,   30463812,      77450,    7425645,
            7353301,   39918344,      99861,    9543169,   13655983,   49372876,     121345,   67264001,   19957642,
            1051682951,    6304719,    6304720, 1054834804, 1061135441,    2102255,    2103276, 1060086868, 1070588953,
            1072690186, 1072691206, 1066387505,    4204508, 1068489761, 1069540379, 1072691209,   11561881, 1065326641,
            1066384423,    5254105,   19967825, 1060060217, 1062175792,   14706599,   39916301, 1056889901, 1057963051,
            23110515,   51472068, 1053719569, 1054799897,   31514430,   63026811,    2103277, 1050589184, 1047481504,
            1044329654, 1073740804,    1052660, 1056933994, 1056933993, 1070588952, 1072691206, 1066387506, 1069539356,
            1068487718, 1070589975,    1051638,    4208588, 1065331752, 1068488739,    7358389,   10519416, 1062175780,
            1066385444,   13666161,   17878817, 1059019801, 1065332766,   33613621,   25239241, 1055864841, 1064281108,
            44118770,   63025792, 1071640589, 1064280073, 1040128205,   76681771, 1069540377, 1064280064, 1052733568,
            1036976354, 1068488739, 1068490781, 1065338931, 1052733569, 1068487718, 1068489762,    1055716, 1068489760,
            1067436058, 1067439143,    6315921,    2113469, 1068487693, 1068487719,   11577148,    6330200, 1072688131,
            1067438106,   16837350,   10545906,    1050619, 1071639560,   56724133,   14761611, 1065338931,    2101238,
            1032775928,   18976291, 1066388528,    5253088, 1049581719,   90336769, 1067438124,    8404939, 1065337909,
            1029624078, 1069538335, 1061136461,    1058771, 1048532121, 1072689159, 1063237698,    3176301, 1067440165,
            3152875, 1065337910,    5292807,      18352,    8403917, 1068488741,    6359713,      42809,   13655983,
            1071640586,    8475195,      66244, 1059035229,    4202472,    6303691,      88656, 1062187080,   10504130,
            3061,     111105, 1066388528,   16806812, 1068490782,     131585, 1071639570,   23109495, 1063235655,
            9454527,    3152875, 1052732547, 1055871076,    4203487,   10505151, 1057984612, 1047437404,       2045,
            17858449, 1063236675, 1039006789, 1070589974,   26260324, 1069539358, 1032675354, 1067431976, 1051681930,
            2101234, 1072696313, 1062169656, 1059034207,   10505153, 1069541398, 1057950774, 1066387505,   18908045,
            1065338930, 1054780449,          0,   27311960, 1062186060, 1052659712,    6306760,   36764451, 1055878234,
            3154913,   18908047, 1043279035, 1045358665,       3065,   28362580, 1051683973, 1036944435, 1071640590,
            37816088, 1061136462, 1028530195, 1069538335, 1044329655, 1070589973, 1066390569, 1066384422, 1054833781,
            4205526, 1064289335, 1063229479, 1066387507,   10512276, 1063236676, 1060073504,    1053677,   27312982,
            1062185038, 1056917521,    7361443,   38866707, 1059032142, 1054812160,   13670231,   50420432, 1048524852,
            1072691208,   38865685, 1033826547, 1043272736, 1070590995,   50421452, 1046430886, 1041168394, 1069538335,
            1036976354, 1059036250, 1059036250, 1068487718, 1050633355, 1072690189, 1059036247, 1066387488, 1065337908,
            4210619, 1060086867, 1067437076,    1057755,    9470823, 1062186059, 1070586887,    5270399,   14731025,
            1064286270,    1047552,    8434466,   50420430, 1057985564,    2101237,   12647107,   64075389, 1063237642,
            1065337908,   63025791, 1025421609, 1073737729, 1066387505, 1029624078, 1041178823, 1050632334, 1066388526,
            1047481506, 1056935014, 1053784184, 1068487719, 1065337911, 1073740805, 1059034208, 1069539346,      12234,
            2117536, 1063236676,    1051642,      32603,    4234042, 1068488740,    6302684,      52973,    5301972,
            0,   10505150,      72320,    7417454,    6302684,   15757217,      90642,   67238436,   12605366,
            1056935016,   10503093,    9453495, 1041179843, 1060086867,    3152869,    3153888, 1049580695, 1064287292,
            1070589972, 1071641610, 1056933994, 1068489762, 1063236676, 1065338931, 1065336890,          0, 1055868008,
            1060083804, 1073739784,    7353301, 1049525349, 1050602590,    4205521,   14706600, 1044234317, 1043222611,
            15758238,   22059898, 1039992861, 1035840561,   25210729,   29412173,    3152866, 1029510144, 1032775928,
            1047481503, 1072692230,    1054698, 1044329654, 1054833781, 1067439144, 1071642632, 1054833780, 1062187081,
            1062186058, 1067440164, 1066388528, 1070588953, 1055874143, 1064286271,    1054698,    3153892, 1045349459,
            1060084825,    5263264,    9459626, 1036927036, 1049565263,   10520404,   23110514, 1028504598, 1041152064,
            37815067,   33613622, 1070592017, 1032736804, 1024372013,   43068154, 1067439142, 1024324608, 1039077589,
            1038029015, 1064287291, 1067441185, 1053783165, 1049581718, 1062185038, 1065339952, 1067439142, 1060085844,
            1056930901, 1064287294,    1059787, 1071639568, 1045368895, 1062186057,    3173230,    4207561, 1039060010,
            1061135442,    4237073,   10516349, 1031702542, 1050628157,    6349491,   16824112, 1062189121, 1045375018,
            8400823,   44118769, 1062187079, 1042221077,       3059,   56723111, 1062186060, 1040117760, 1065339952,
            1029624078, 1062185037, 1057986652, 1056932974, 1044329655, 1061135431, 1059036249, 1047477421, 1057985632,
            1051682856, 1060085846, 1034807442, 1072691209, 1051681813, 1061136464, 1024245856,    3164077, 1053782021,
            1063235654, 1015796772,    7376720, 1054833780, 1055886375, 1072696307,   10540787, 1056935016, 1060086802,
            1068490782,   14753428, 1059036250, 1068487684, 1062187081,   70379091, 1062187080,    2100218, 1055882357,
            1021220164, 1066387506, 1048532122, 1049578656, 1038027992, 1065338895, 1052732547, 1029586051, 1055885420,
            2100218, 1055885420, 1012746322, 1072693249,    6302685, 1061135442,  999066654,      22419, 1046430889,
            1066386485, 1065339951,      42788, 1051682952, 1067440142, 1061138504,      62135, 1057984613,    3151854,
            1057985634,      81481, 1064286272,    9453513, 1054832762,      99841, 1070589974,   15756196, 1051679889,
            13653917,    4201450, 1038027993, 1030658163,    6303693,   11554749, 1045380270, 1009638466, 1072695293,
            18908048, 1052733569,  995974167, 1066389548, 1036978398, 1061135443, 1054836844, 1059035229, 1046430887,
            1068489762, 1054834802, 1052693605, 1055884399,    2102253, 1053784184, 1047404636, 1065337909,   11555768,
            1053783165, 1042112567,       3065,   21008259, 1053782144, 1038922752,    5259192,   29412174, 1036976225,
            5254096,   21009279, 1027523865, 1017018415,       4084,   31512386, 1038027991, 1010714639, 1069541399,
            1028574483, 1049581717, 1045382313, 1064288313, 1041178822, 1061135442, 1048531100, 1060084827, 1054832760,
            1071640590, 1050632334, 1049559127, 1067438123,    3158981, 1053783166, 1041138762,    1056731,    8416122,
            1056933996, 1032715307,    4217735,   31514430, 1051684940, 1024294912,    8427315,   43068153, 1036986394,
            1071643653,   44117749, 1017019737, 1044336646, 1068490780, 1020170568, 1031725313, 1035926759, 1065338929,
            1036976356, 1046429865, 1041179844, 1063236677, 1052732546, 1061135441, 1047481505, 1061134422, 1068489761,
            3066, 1053783164, 1049572422,      13244,    2116509, 1060085846, 1042213942,      30550,    3180352,
            1067437102, 1034856477,      46832,    5293794, 1070589955, 1029598208,      62089,   56724132,    6301664,
            1063238718,   13647770,   12599195, 1025423653, 1062188100,    3151837,    4201428, 1034877164, 1062186058,
            1067440163, 1070590993, 1044330675, 1062185037, 1056933994, 1061136463, 1053784186, 1062186060, 1046427827,
            1051680909, 1064286271, 1052732466, 1038990489, 1041143974, 1073740805, 1051681822, 1033666663, 1029521526,
            3156934, 1052731404, 1029405734, 1020020804,   17858451, 1055883264,    3152853, 1012623360, 1015968098,
            1053784186, 1071642633,    2103262, 1028573460, 1055884398, 1063238717, 1071642632, 1041179845, 1057985633,
            1055883377, 1065338931, 1054833783, 1061135442, 1048528038, 1059034207, 1067439145, 1064287294, 1031671946,
            1052730506,    1056729, 1061138459, 1017971801, 1040111771,    2117510, 1070589957, 1006382113, 1020111974,
            4226867,    4201452, 1069542417, 1005381690,    9445283,    9452495, 1064290355,  992753664,       2033,
            1043280057, 1060085846, 1066392610, 1062188099, 1048532120, 1054832760, 1063238716, 1050630293, 1054833783,
            1050629273, 1060085845, 1038022889, 1061135443, 1029597307, 1055884398, 1023242462, 1067438123, 1009619018,
            1052731526, 1011585157,          0,  995947547, 1044323471, 1002058795,    7354323, 1060087885, 1016994899,
            1072696299,   14706598, 1057986654, 1003330605, 1066390566,   23108473, 1055884397,  990716928, 1057985634,
            1032775929, 1053783164, 1055886440, 1048530078, 1042228419, 1052730505, 1054835823, 1040124124, 1051681931,
            1032768618, 1054833782, 1020125399, 1061135442, 1011755065, 1053783163,  993797244, 1070588952, 1001246739,
            1053782143,  974841894,    3154905, 1050633354, 1053781120, 1063241780,    8411031, 1051682951, 1022269503,
            1057987674,   26261345, 1052732547, 1013866527, 1052733568,   36764452, 1053783166, 1007563776, 1047479464,
            1022271801, 1055882358, 1044331695, 1041175760, 1034877164, 1043280983, 1046431906, 1023301838, 1047481503,
            1025429541, 1049581717,  985449586, 1061135442, 1024378891, 1052731526,  959164449, 1073740804, 1040130248,
            1055882357, 1051686011,    3162033, 1044331696, 1059033186, 1049584781,    6323037, 1049580695, 1035935783,
            1047482526,    9483016, 1053783165, 1040136206, 1045379248,   50420431, 1059034209, 1049587712, 1043276994,
            1011767673, 1062187074, 1032775928, 1033821381, 1028573462, 1051691022, 1039077589,  987590759, 1044330675,
            1070588929, 1044330675,  958173211, 1061135441, 1030674694, 1050632335, 1041179843,       4080, 1038027992,
            1056933993, 1042229439,      21385, 1046429866, 1064285250, 1043279035,      38691, 1053783163, 1059041293,
            1044328631,      54972, 1062186059,    3149811, 1045379251,      70230, 1070588953,    9452493, 1046428847,
            18895738,    4202472, 1021221185, 1001271386,    8399803,   12604345, 1030674696,  973965331, 1071644672,
            1021220163, 1040128208, 1029625098, 1062187078, 1031725312, 1049581719, 1033826545, 1051680910, 1043279036,
            1059035229, 1038027991, 1042185388, 1054832760, 1068488738, 1043279038, 1036848254, 1065337908,    1054693,
            1047480484, 1031535689,    1052655,   13655983, 1052730506, 1027278848,    3162022,   23109495, 1029635148,
            6302652,   24161132, 1009665418, 1007590411,       4078, 1010717057, 1022270779, 1018070353, 1067440162,
            1025422631, 1034877164, 1026473250, 1060085847, 1040128206, 1048531102, 1033826546, 1051681932, 1054833781,
            1061136464, 1042228419, 1040103585, 1069539358, 1073740802, 1050630292, 1023243374,      11203,    1062831,
            1057984613, 1011651647,      24422,    3172188, 1065336887, 1001114624,      37640,   36765473, 1064291329,
            1071644672,   16787328,   14691199, 1007564184, 1067441186,    4198358,    5247945, 1018070354, 1062188100,
            1065338931, 1068491802, 1029624077, 1056935015, 1050631312, 1055885420, 1041178824, 1052731528, 1036973295,
            1044326591, 1052732547, 1042218133, 1028471010, 1031706885, 1063237697, 1016980573, 1024149641, 1016885428,
            0, 1002258484, 1019863085, 1006291026,    1059769,  989637632,    4199367,  998878208,   11535247,
            1061139525, 1070593036,    2102222, 1072694257, 1059037269, 1060086866, 1070594057, 1059037270, 1056936037,
            1049580698, 1062188100, 1044327612, 1054833781, 1039073506, 1052733568, 1028568356, 1053781123, 1021159643,
            1044327613, 1012743488, 1048528008, 1001117825, 1034872059,  999984320, 1018058825,  987401257, 1005384875,
            990423104, 1006499878, 1069543439,  983263306, 1072694243,  995993600, 1062189120,  967471104, 1064291374,
            1049584780, 1054834801, 1066392609, 1052735611, 1050634377, 1047480483, 1061138503, 1042226377, 1051683973,
            1040126166, 1054835821, 1029621017, 1052733569, 1020140754, 1049581716, 1011732800, 1054832762,  988573816,
            1044327612,  979057856, 1056931954,  965429284, 1039073508,  955868224, 1027529779, 1057988696, 1003324578,
            1062192183, 1024378903, 1053786227,  969676865, 1054836843, 1025428480, 1050632335,  950751232, 1047481504,
            1038030036, 1046429868, 1052737651, 1039077590, 1042230460, 1042226377, 1050635396, 1031721230, 1047480484,
            1027512522, 1048533142, 1021209920, 1051681931,  985471085, 1046430887,  970718400, 1055884399,  957094942,
            1044328633,  932851776, 1061135442, 1046432927, 1042226379, 1048536203, 1046439963, 1046430886, 1009654935,
            1045382311, 1060089862, 1045380269,  967628853, 1041179844,    2100216, 1045378228,  949768192, 1036976355,
            1026474268, 1044327611, 1040131269, 1032772868, 1034876143, 1043275968, 1041180865, 1027519783, 1042229441,
            992858209, 1042230461,  972869824, 1049582739,  963446807, 1043280057,  923473984, 1057984611, 1034878182,
            1044329653, 1035929820, 1066387506, 1038027992, 1046427825, 1035927778,          0, 1041177801, 1026475147,
            1034877161,    8402897, 1043280059,  978167848, 1034875121,   15756194, 1046429868,  969764864, 1033823483,
            1014919525, 1049579676, 1027524886, 1032771846, 1026473250, 1013879891, 1031726333,  989704384, 1038026974,
            988679183, 1035927780,  929832000, 1048532122, 1024372013, 1041177802, 1023323437, 1060085846, 1029625097,
            1045379249, 1026474269, 1071639570, 1035927781, 1049581719, 1029624077,    2107338, 1042229440, 1054831741,
            1032773887,    5265281, 1048531100, 1004439577, 1034875121,   29413196, 1054832759, 1012840448, 1038023910,
            1003363758, 1048538181, 1013869928, 1022273728, 1018069332, 1032794118, 1022271801,  955070528, 1032775931,
            1012817268, 1030673674, 1010718077, 1047481505, 1022271802, 1038027995, 1017020759, 1062186057, 1031725312,
            1046429867, 1023322417,       4082, 1041179845, 1053783164, 1029625100,      17300, 1051681932, 1062185038,
            1035926760,      31543, 1061135443, 1046445064, 1042227398,      43738, 1070587931,    2101238, 1048529061,
            23082840,    4202470, 1001263546,  999189568,   10492842, 1001262523, 1012817269,  998111693, 1071643653,
            1014917482, 1024372015, 1008614800, 1057985633, 1027523866, 1035925738, 1018069332, 1044326591, 1041177802,
            1046430885, 1027523865, 1030647048, 1053783163, 1057985634, 1038026974, 1026306232, 1066388527, 1069538336,
            1047479462, 1022000214,       6114,    1054685, 1055883376, 1018778624,      16272,   15756194, 1064287294,
            8396710,   19923815,   17826659,          0,       3049,    4195281,    5243838,          0, 1065339951,
            1062188100, 1066391588,          0, 1054833782, 1045378230, 1051681929,          0, 1044326590, 1027518762,
            1035923696,          0, 1032766722, 1015870784, 1021214041,          0, 1010610352, 1013594304, 1005307136,
            0,  993728591, 1011372096,  994674816,          0,  981076992,    4195256,  987235328,          0,
            1070598135, 1069543440,    2098111,          0, 1065341992, 1055886440, 1069545481,          0, 1059036248,
            1043276995, 1059037268,          0, 1051681930, 1029618975, 1047481506,          0, 1044327612, 1011713344,
            1035923697,          0, 1036972272,  988472512, 1024365890,          0, 1003305127,  971572288,  994863360,
            0,  974897222, 1068495885,  966409344,          0,  957014016, 1059040333,  946381824,          0,
            1060089930, 1050632333, 1065345054,          0, 1055887461, 1040128207, 1057989713,          0, 1051684993,
            1030670612, 1050635397,          0, 1048531102, 1014899008, 1043280058,          0, 1044328634,  973839552,
            1035923698,          0, 1040125143,  943310912, 1027518763,          0, 1005440156, 1055888481,  993860864,
            0,  966554683, 1049585801,  950732928,          0,  947637248, 1044330674,  918124544,          0,
            1046433948, 1038026973, 1050637436,          0, 1046431907, 1031722249, 1047483545,          0, 1045381289,
            1025417528, 1043281078,          0, 1045379248,  969696448, 1039077588,          0, 1044328631,  926590016,
            1034874100,          0, 1044326590, 1042233524, 1030670613,          0, 1017016465, 1040131269, 1003347200,
            0,  971848751, 1038029015,  946594944,          0,  957144064, 1035925738,  903504896,          0,
            1033827566, 1032773887, 1035930841,          0, 1036977375, 1030670614, 1035928799,          0, 1039078609,
            980237504, 1035927782,          0, 1042228418,  924555328, 1034876141,          0, 1045379251, 1029627141,
            1033825526,          0, 1048529060, 1030676736, 1033822464,          0, 1040129157, 1032774907, 1025419520,
            0,  989729824, 1033824504,  958192768,          0,  988680192, 1034874102,  905670656,          0,
            1021221183, 1034874102, 1022272821,          0, 1027522843, 1004416192, 1025423653,          0, 1032776951,
            940352576, 1027524885,          0, 1039078611, 1017020757, 1030674694,          0, 1045380270, 1022271802,
            1033824504,          0, 1051681929, 1026473247, 1035925739,          0, 1057983589, 1031723269, 1039074528,
            0, 1023344657, 1035924717,  986571904,          0, 1045392384, 1040126166,  925669376,          0,
            1007566225, 1044326592, 1007567248,          0, 1017020759,  973983808, 1013868906,          0, 1027522845,
            1004415397, 1020171588,          0, 1036976354, 1012817268, 1026473246,          0, 1046430888, 1021220163,
            1032775930,          0, 1055884399, 1028574482, 1039077590,          0, 1065337911, 1036976355, 1045378229,
            0,          0, 1044329654, 1033832576,          0,    8404940, 1051681931,  967696384,          0,
            994959843, 1029641280,  992860651,          0, 1007566227,  991809013, 1003363759,          0, 1021220162,
            1003363757, 1012818290,          0, 1033826546, 1014918502, 1023321398,          0, 1047480483, 1026473247,
            1032774907,          0, 1060085845, 1038027993, 1042229442,          0, 1072690185, 1049581718, 1051681931,
            0,      11193, 1060085846, 1060085847,          0,      20327, 1070588954, 1033848832,          0,
            27263799,          0,          0,          0,   12583834,          0,          0,          0, 1070593035,
            0,          0,          0, 1053783165,          0,          0,          0, 1036972272,          0,
            0,          0, 1019112805,          0,          0,          0, 1014723840,          0,          0,
            0, 1012478080,          0,          0,          0, 1011352576,          0,          0,          0,
            9438096,          0,          0,          0,        995,          0,          0,          0, 1062190140,
            0,          0,          0, 1049581717,          0,          0,          0, 1035923696,          0,
            0,          0, 1022265677,          0,          0,          0,  999036160,          0,          0,
            0,  978968704,          0,          0,          0,  965231616,          0,          0,          0,
            1070597102,          0,          0,          0, 1064292397,          0,          0,          0, 1054836845,
            0,          0,          0, 1045380270,          0,          0,          0, 1035923697,          0,
            0,          0, 1025417527,          0,          0,          0,  992788736,          0,          0,
            0,  956997760,          0,          0,          0,  930679808,          0,          0,          0,
            1057991757,          0,          0,          0, 1052736629,          0,          0,          0, 1047482525,
            0,          0,          0, 1041178823,          0,          0,          0, 1034875123,          0,
            0,          0, 1028570400,          0,          0,          0,  997030144,          0,          0,
            0,  946566272,          0,          0,          0,  908717056,          0,          0,          0,
            1043284139,          0,          0,          0, 1041181884,          0,          0,          0, 1039079630,
            0,          0,          0, 1036977376,          0,          0,          0, 1034874101,          0,
            0,          0, 1031722251,          0,          0,          0, 1012809984,          0,          0,
            0,  950819968,          0,          0,          0,  902490112,          0,          0,          0,
            1029626119,          0,          0,          0, 1030675714,          0,          0,          0, 1031726333,
            0,          0,          0, 1032775929,          0,          0,          0, 1033825527,          0,
            0,          0, 1034874102,          0,          0,          0, 1035922678,          0,          0,
            0,  970808448,          0,          0,          0,  913047552,          0,          0,          0,
            1014919523,          0,          0,          0, 1019121991,          0,          0,          0, 1024373036,
            0,          0,          0, 1028574482,          0,          0,          0, 1033824505,          0,
            0,          0, 1038025953,          0,          0,          0, 1042226378,          0,          0,
            0, 1007580288,          0,          0,          0,  943536128,          0,          0,          0,
            1000213949,          0,          0,          0, 1008616844,          0,          0,          0, 1017018715,
            0,          0,          0, 1025421610,          0,          0,          0, 1032775930,          0,
            0,          0, 1041177804,          0,          0,          0, 1048530080,          0,          0,
            0, 1055882358,          0,          0,          0,  997101568,          0,          0,          0,
            986555903,          0,          0,          0,  998110673,          0,          0,          0, 1009665418,
            0,          0,          0, 1021220162,          0,          0,          0, 1032774908,          0,
            0,          0, 1044329655,          0,          0,          0, 1054833782,          0,          0,
            0, 1065336888,          0,          0,          0,          0,          0,          0,          0,
            1023,       1023, 1073740802,          0,    1049599,    2099196,    1050621,    3149814,    4197366,
            6297583,    5250027,    9448411,    7348197,    9449432,   13648838,   17850284,   11552706,   16805791,
            22053773,   25209706,   22060918,   26266447,   29414217,   32569130,   30470956,   33626890,   35724042,
            39927530,   37830379,   40985292,   43082442,   47285930,   44140205,          1,   50440843,          1,
            1073739782,    4199408, 1072690185,    5250026,    1050619,   12599240,    2100216,   14701496,    7350240,
            24152965,    9450453,   28354412,   17851305,   33611578,   21003157,   37814047,   30455647,   37822214,
            33609540,   44122854,   35716896,   45179594,   40968961,   51480233,   42024681,   53586569,   47276745,
            59888231,   49383082,    1047555,   55683720, 1073739783,   57791080,    5252068,   64091718,    6301663,
            1071640592,   16802731, 1070588953,   17854366,    2101238,   30456667,    2101237,   31509325,   10502091,
            40965900,   11552705,   43068154,   23105412,   49373897,   24158071,   53575344,   35711794,   57780873,
            37813027,   63032937,   45170409,   66188869,   48322260,   72490530,   52528809, 1072689165,   58828428,
            1071639571,   61985383,    6303705,   68286022,    7353299,   70393378,   18907026,   77743617,   18910087,
            1068488740,   32561983, 1066387505,   32565040,    2101237,   46217961,    2101236,   48320217,   12604344,
            57775768,   12607407,   61977218,   25209705,   68283979,   25212764,   73536046,   39914260,   79840769,
            42016517,   86142465,   52521664, 1070588953,   55673517, 1069538335,   63029873,    7355342,   68280919,
            7356362,   73538085,   18912124,   79838725,   18915185,   85094913,   31520546,   92445185,   31524627,
            1064287293,   51471047, 1063235656,   44134066,    2101236,   65129067,    2101237,   69329493,   13658022,
            78787089,   12611486,   84038145,   25216848,   92444161,   25219907,   98744833,   38873843, 1068488740,
            37829347, 1067438121,   58824345,    6308807,   61976197,    6308804,   72482366,   17869671,   76683812,
            16823134,   86139393,   29430532,   91391489,   27336437,   98747905,   40992414,  106099201,   37850762,
            1061135442,   71432765, 1060083804,   47315486,    1052662,   89289217,    1052663,   94540289,   12613527,
            105046529,   11565969,  111348225,   24174390, 1066388526,   22080298, 1065338931,   35735250,    5261250,
            32593600,    4212672,   47297131,   13679444,   43107924,   11584331,   80885259,   23146214,   76696065,
            17906391,   97692161,   31563382,  102944257,   25276002,  113449473,   41029124,  120800769,   32644609,
            1057984612,   79863297, 1056932973,   38965761,       3064,  117648897,       3066,  123950593,    9469835,
            1065336888,    7374726, 1064287293,   18936605,    2116542,   14745361,    1067964,   27354798,    7392067,
            22114973,    4248378,   36820541,   12666568,   28436007,    6378170,   45237761,   17940046,   35805697,
            9555514,  109244929,   22163969,   79883777,   11682305,  127102465,   27435521,  134452737,   13809153,
            1054833781,   74662401, 1053783165,   15934977,       2043, 1063237697,       2045,       2046,    5278592,
            20410,    2133883,    1049599,   10553093,      56114,    5313274,    2100218,   14779019,      89771,
            7442042,    6299623,   20051472,     121382,   10619393,   12605366,   25324033,     153089,   12746241,
            18912130,   29547009,     182785,   14872065,   24167253,  134461953,     211457,   67342849,   28374827,
            1051683973,    1050619,       2044, 1073740802, 1072695294,    1049598,       1023,          0,      37749,
            2096130,    1050621,    5250025,      72430,    1047555,    3149811,   13651900,     106089,    5253087,
            9451474,   24157048,     137729,   13659043,   15758235,   29414214,     167425,   18916212,   22063979,
            34671383,     197121,   23121741,   26271552,   40977125,     225793,          0,   31526678, 1072690185,
            1051641,       1023, 1072693249,          0,    1050621,    3150834,    1047554,    7352279,    1048576,
            10500048,    2101239,   17856408,    2096131,   19955602,    8400856,   28362579,    1051641,   24163171,
            19953559,   37817108,    9456576,   29419318,   26262366,   46223065,   16811914,   34675464,   31518511,
            54629022,   21018464, 1073740805,   37824254, 1069538335,   24175418,       1023,   45178572,    1051641,
            1022,    6301664, 1072689165,    9455554,          1,   15755175, 1073739783,   19960699,    2100218,
            26260325,    3150832,   33614641,    5251047,   33616684,   12604345,   45170407,   15752111,   40972024,
            24158069,   56726174,   22059897,   48327362,   33614643,   67232342,   26267469, 1071638548,   42020599,
            1065337910,   32572191,       2045,   50426556,    1052660,   37828337,    8403917,   58831488,   11557804,
            1073740805,   19957642, 1066387504,   21016413, 1073740804,   31512387, 1072689165,   32573193,    2101235,
            42018557,    5253088,   53572280,   10503111,   51475131,   14707615,   66179683,   22055813,   60930682,
            28361559,   79835663,   30462791, 1067438123,   39917324, 1062186059,   36769554,    1052662,   51473090,
            1052660,   44124893,   10507190,   61979258,   10513307,   51481254,   21013356,   72485427,   18926399,
            1069539357,   36765471, 1060085846,   28387040, 1072690186,   49371856, 1071638549,   37848703,    3152874,
            61977217,    6305745,   76682792,   13655980,   73534003,   15763334,   92439041,   26259302, 1064286272,
            26270516, 1059034207,   36765472,    1052660,   46220003,       3063,   46222044,   10512291,   59875982,
            7370637,   55678619,   21020494,   73531961,   13688611,   65134170,   31528693,   86139393,   20005559,
            1063236675,   56725152, 1054833782,   26323530, 1071639569,   71431750, 1069538336,   32640513,    6303704,
            86137345,    5259208,  105042433,   15760274, 1060085845,   14719854, 1054834802,   26267461,    1052661,
            24180496,       3067,   43069175,    8418196,   33642160,    2129792,   55674536,   16831281,   68279896,
            5305095,   67231322,   25245388,   85084673,    7429774,   79836684,   33659492,   99793409,    9554453,
            1057983590,   73542151, 1049582739,   11677185, 1070588954,   98740737, 1067438123,   13799937,    6306764,
            1056935017,    3163074,    1052661,   15765369,       3065,   10529624,          0,   26274594,    5274503,
            16847597, 1073739783,   36783815,    9496341,   23164544,          1,   64078451,   13718178,   29481490,
            3151853,   78784025,   18987567,   74610177,    6304726,   93490689,   23207425,  113446401,    8408000,
            1052732549,   72532481, 1045380270,   10511276, 1068488741, 1053783164, 1065337910,          0,    4210629,
            2044,    1066941, 1073739783,   12624739,      33658,    4242244, 1073740804,   21038847,      64250,
            6367947,    3151855,   29451928,      92794,    8491602,    9453515,   36817456,     121345,   10615297,
            14706598,   90337793,     147969,   12739073,   18911108,  107143681,     173569,   67309057,   23114595,
            1047481505,    2103279,    2103278, 1071639568, 1066387505,    1050620,    1051642, 1072689165,    2114496,
            1073739783, 1073740804,          0,    7385934, 1073738760, 1073739782,    6303706,   11607772,       1023,
            1051640,   14706601,   16877161,    2103279,    4204514,   22060919,   21096961,    3156959,    7356363,
            29414216,   25316865,    4209616,    9459638,   35718938,  120797697,       3066,   11562914, 1067437101,
            1043279036, 1073740803,       2044, 1071638549, 1064287292, 1073739782, 1073740804,    2102259,      18363,
            2100216, 1073739784,    9455553,      49978,    6302684,    1050620,   19958663,      79546,   10506174,
            6302686,   29413193,     107067,   13660066,   11555768,   38868749,     134657,   16812936,   16808852,
            48322257,     160257, 1073739783,   21013364, 1062185037,     185857, 1072690186,   25216851, 1069539356,
            3153896,    1047554, 1071639571,    3153892,    2101237,    5252069, 1072689166,   11559845,    1047554,
            11555770, 1072690185,   21015391, 1073738762,   17859470,    3151855,   37816090, 1073739780,   24163174,
            10505154,   49370833,    1051639,   29417279,   18908048,   60926600,    2105319, 1069539357,   25212767,
            1055884397,    4207575, 1071639569,   32566065, 1068488740,    4211657,    1051642,   38870788,    4205529,
            1052661,    8403918, 1065336888,   11564938,       1023,   16807832, 1069538337,   19973942, 1073739782,
            26261344, 1073739782,   28383968,    1047554,   33616683,    5254108,   58825364,    4201451,   42020598,
            14707621,   73529919,    8403917, 1064287293,   25210728, 1051681931,   11558832, 1070588952,   34665259,
            1066388526,   14711701,    3151851,   44119791,    3158992,   17865595,   10507187,   52525748,    8424303,
            1073739782,   23109493, 1057983589,   14738189, 1072691208,   33614642, 1065337909,   21052074, 1072691209,
            44119791,          1,   26317380,    2101238,   54624941,    7356358,   86134273,    8403920, 1059035229,
            16811907, 1046430888,   15756195, 1069538336,   31514430, 1064288313,   21011322,    4204510,   43069174,
            1062856,   26265426,   12611479,   54624941,    3185495,   31519531,   21019467,   66179684,    5307109,
            1068488740,   40968962, 1050631313,    7427700, 1070589975,   54622899, 1062187081,    9548290, 1073739784,
            67228260,       1023,   11667969,    4202470, 1053783164,    7361458,    3153894,   12606387, 1067439145,
            15769440,       2044,   22058876,    3157972,   24179467, 1072689165,   30463813,   10519420,   52521663,
            1070588947,   37819152,   17880866,   66177642, 1069535255,   46223068,   25242309,   79833621, 1067430935,
            1061136463,   64077430, 1043280057, 1065327632, 1067438123,   79832602, 1059035228, 1064273926, 1073740803,
            1048532121, 1072693248,       2046,    6305745, 1065338931,    5267360, 1072690188,   15759252,    2110412,
            11581247, 1070589973,   28362579,    6329187,   17895132, 1070588947,   38866705,   10546937,   23160439,
            1072688137,   49371854,   14764686,   70388259,       2046,   59877004,   18981411,   93488641,    2103280,
            1053783164,   70405633, 1036977376,    4203490, 1064286271, 1044329655, 1055883376, 1069540377,          0,
            1063238718, 1072693249, 1069540379,    8407995,      15301,    2124687, 1070587931,   16814962,      41803,
            4246302, 1071639564,   25222947,      67282,    6367917,    2102260,   47271642,      91738,    8488507,
            7353300,   60925579,     115201,   10608129,   11556789,   73530940,     137729,   67278337,   16808855,
            1047479461,    5254107,    5254107, 1064287294, 1061135442,    1052660,    2102258, 1066388526,       1023,
            1072691208, 1073740805, 1069539356,    7362473, 1071637522, 1071639570,          0,   14723919, 1068483613,
            1070587924,    7353302,   22085364, 1065324579, 1068483608,   14706600,   29447829, 1063214107, 1066379284,
            22059898,   72479304, 1061104650, 1065325579,   29413196,   87185921,    1053682, 1063223296, 1056935015,
            1040128205, 1073740804,    1051639, 1063237697, 1056935014, 1071639569, 1073740805, 1070588952, 1072693248,
            1070588948, 1071639569,    3152873,    4219800, 1070586897, 1070589974,   10507186,    8438574, 1070586891,
            1071638543,   22059897,   12655300, 1071636485, 1073739780,   31514429,   16873049, 1071639553,    1052663,
            42017537,   21089793, 1072690187,    3153897, 1050632335,  100839937, 1071639571,    5254107, 1060086867,
            1033826547, 1070588952, 1069540378, 1070589973, 1053784186, 1070589969, 1070588953,    4206547, 1073740802,
            0, 1069539356,   11562891,      28552,    4201450, 1070589974,   18921281,      55054,    7354323,
            1047553,   42017536,      79510,   10506173,    4203492,   53573302,     102942, 1067438123,    9455557,
            1044329655,     126465, 1068488740,   14706598, 1057984613,     148993, 1069539356,   18910088, 1071639571,
            7354318, 1072690183, 1062187078,    4210621,    3152872,    4203493, 1065337910,    9472869,       1023,
            10505151, 1068487718,   14735115, 1071640591,   16807832, 1072689167,   19996335, 1070585878,   23110514,
            3152875,   66177643, 1067428898, 1061135442,   10505151, 1038026973, 1064269857, 1065336888,   17858449,
            1054833783, 1062159379, 1070588954,   25211747, 1071639570, 1060049920,    2101237,   32565046,    2116521,
            3152873,    9455557, 1053784185,    4235071,       2043,   17858449, 1060085844,    6352597, 1072690187,
            27310940, 1067437101,    7421547, 1071638548,   35714855,    1047554,    9538049, 1070587922, 1053783163,
            6305742,    5254101, 1070586894, 1062186058,   16808855,       3063, 1070586888, 1070589975,   27310939,
            1070589975, 1071637507,    4203486,   36765471, 1065337909, 1072689152,   11559839,   46220003, 1060071491,
            1072691207,   26261345, 1045380269, 1053754438, 1071640590,   36765471, 1055883377, 1047433269, 1070589975,
            47270620, 1065337908, 1042160660, 1070589975, 1047480483,    1052661, 1072695291, 1072689161, 1059035228,
            8409008, 1070590994,    2101237, 1070589972,   14717799, 1067439143,    5254110,    4208584,   35715876,
            1065336889,    8405959,   10518392,   48320219, 1059029049,   11557810,   17876774,   59874962, 1054821426,
            1066388527,   47269600, 1036977375, 1049565218, 1067439143,   59874961, 1050632334, 1045357580, 1068489761,
            1041177802, 1064287292, 1067440164, 1071638548, 1055884398,    1054697, 1066388526,    1051639, 1071639570,
            6316945, 1065337910,    7354322,    3164083,   11579192, 1065336889,   13657003,    7378770,   17890013,
            1061134379,   19959685,   10543856,   59873942, 1061134363,   26261343,   14757517,   73529919, 1063233548,
            1057985631,   68282946, 1029623057, 1066385410, 1063236677, 1033826545, 1046429866, 1060086865, 1067438122,
            1052733568, 1063236676, 1062186058, 1072691209, 1071639569,    1056734, 1063237697,    5253085,      21407,
            3176308, 1066387507,   13657003,      43820,    5293834, 1066388503,   22060918,      65211,    6362784,
            1047553,   31513409,      85578,    8480310,    5252068,   39917324,     104961,   67250689,   10503111,
            1049582739,    8403906,    7355332, 1052733569, 1057984611,    2103274,    3152870, 1056935014, 1066387505,
            1071640591, 1072691208, 1062187080,       2043, 1066387506, 1068487718, 1068487719,    7357375, 1061118024,
            1063235651,          0,   14713725, 1054793807, 1056914503,    7353300,   31513408, 1050562622, 1050594368,
            14706599,   42018557, 1046332440, 1045321766,   22059898,   53572283,    2104296, 1040050176, 1044330674,
            1041178822, 1072692229,    1053680, 1052733569, 1052733568, 1068489759, 1072691207, 1061136462, 1065336888,
            1065336887, 1069539357, 1070588953,    1053678, 1059025982, 1066387505,    3153887,    7363488, 1053763644,
            1064286272,    9459617,   13673295, 1047449643, 1056925751,   25209705,   21031676, 1041136656, 1051668523,
            34664237,   53572280, 1070592015, 1047460887, 1036976354,   67227241, 1068489760, 1043254272, 1048531099,
            1032775928, 1066388527, 1068489760, 1060086868, 1048531100, 1065336890, 1067439145, 1072690187, 1063237696,
            1060081714, 1066387506,    4209597,    1055715, 1056928807, 1065336888,    8419182,    5271427, 1054825495,
            1065336888,   13678365,    8436513, 1053773831, 1061133347,   47269600,   12651199, 1064288314, 1062183955,
            1028574483,   16864859, 1064287292, 1064285191, 1044329654,   80882198, 1064287292, 1069536256, 1059036249,
            1025421609, 1065337910, 1060085845,       2045, 1043280057, 1063236642, 1061136461,    2117532, 1062187081,
            1066388494, 1063235654,    4231994,       9176,    1046529, 1065336891,    5297881,      32613,    4200429,
            1068487721,    7411318,      54004, 1056935017, 1069539339,    7352257,      75394, 1060084824,    2102259,
            3060,      95761, 1063236677,    7353302, 1067439143,     115201, 1067437101,   12604344, 1060084826,
            11554734, 1069540364, 1050632334, 1051675785,    5254102,    3152875, 1054834803, 1041118321,       2045,
            9454534, 1060084823, 1031627859, 1068489760,   15757217, 1065336888, 1024236575, 1063235652, 1048532121,
            1071638548, 1072696310, 1057956942, 1054834803,    3152874, 1069540378, 1052679242, 1062186059,   11554750,
            1064287293, 1048447021, 1069538336,   18907025, 1059034208, 1045267456,    2102256,   26260324, 1053781121,
            4204505,   11554749, 1040129226, 1035894879,       3062,   19958664, 1048532121, 1024321603, 1070590994,
            28361556, 1056935016, 1012750361, 1067438124, 1041177802, 1065337908, 1065340972, 1063236674, 1050632334,
            2045, 1063237696, 1056919615, 1061135441,    6306752, 1060086867, 1050606646, 1071639570,   19958663,
            1057984612, 1044293663,    4206542,   29413195, 1055883379, 1039029248,    9464711,   39916303, 1035915340,
            1072691207,   29413194, 1030674694, 1026456625, 1069540376,   40966919, 1042229439, 1016998929, 1067439144,
            1032775931, 1054832760, 1056936035, 1065337909, 1046430889, 1066388527, 1056936037, 1064287293, 1060085846,
            1055717, 1056935014, 1057980462, 1073740804,    6314902, 1057984612, 1055877151,    3163053,   11573061,
            1059034207, 1053774863,    6326100,   40966918, 1042230325, 1052723200,   10536698,   53572283, 1039080477,
            1064288314,   53572282, 1021221185, 1040130056, 1064287291, 1025421611, 1036976356, 1047482524, 1064287292,
            1042228419, 1051682952, 1050633354, 1065336890, 1059035228, 1067438123, 1054833783, 1066387505,       3062,
            1059789, 1059034209, 1064287256,      22411,    3175275, 1063235656, 1069539335,      40737,    4241161,
            1054838812,    2100216,      59063,    6354599, 1066389510,    5252067,      76365,   67227238,    3150835,
            1054834801,   11551655,   10503081, 1039077589, 1057985632,    3152864,    4202458, 1045380270, 1061136463,
            1069539355, 1071640589, 1051682950, 1065336890, 1060085847, 1063237696, 1059035228, 1069538335, 1051671693,
            1055882356, 1066388527,    1050621, 1044254841, 1046396032,          0,    6303705, 1038951514, 1035848806,
            7354322,   12606387, 1034699810, 1027406907,   15756196,   18908046,    3153883, 1021067264, 1029624078,
            1045381292, 1071642631,    1054692, 1039078609, 1051682951, 1065338930, 1071642632, 1049582740, 1057985632,
            1059035229, 1066389548, 1060085845, 1065337910, 1052728453, 1061136463, 1070589973, 1072691209, 1037981800,
            1055883377,    3155922,    5254101, 1026401356, 1044312179,    6313869,   15756195, 1016920092, 1029583956,
            28361559,   24160110, 1070590993, 1018011695, 1020170568,   32564025, 1066389549, 1007491072, 1033825524,
            1035926760, 1062187080, 1067441186, 1047481505, 1045381292, 1057984610, 1064289334, 1061136462, 1055884400,
            1054831739, 1062186057,       2044, 1066387506, 1034856534, 1059035227,    2114467,    1052657, 1024340027,
            1056933996,    3177291,    6310827, 1012776981, 1046424675,    5287666,   12617571, 1061138504, 1030661184,
            9447341,   35714857, 1060086866, 1021203490,       3058,   46220005, 1059035228, 1013844992, 1064288313,
            1026472228, 1057984613, 1056937058, 1053782145, 1039078610, 1057982569, 1056936036, 1042226379, 1052733568,
            1038023745, 1056935014, 1029547190, 1066388525, 1031718951, 1057984613, 1017911404,    1057753, 1026466829,
            1059033186, 1009452071,    5269376, 1052733567, 1053783121, 1072696303,    8431399, 1053784183, 1040130089,
            1067441186,   11593422, 1055884398, 1039080466, 1060085845,   59874961, 1057984611, 1041180672, 1051681929,
            1015969119, 1061134420, 1046431909, 1044326590, 1033825527, 1047485481, 1049582739, 1024329898, 1050632335,
            1050637330, 1052733568, 1002217567, 1067438121, 1060086787, 1056933996,  986430498,      13249, 1043280056,
            1061134421, 1064290353,      31574, 1048531100, 1065335867, 1060086865,      49900, 1053782142, 1059040272,
            1054834801,      67202, 1059034207,    1047552, 1050631313,      84503, 1065335868,    6300644, 1046427824,
            16799628, 1063241742, 1034878184, 1025405086,    7352259,    3150833, 1042229442,  993866832, 1072694270,
            9453515, 1048532122,  977045532, 1064288313, 1033826546, 1055883377, 1053786228, 1055882358, 1042229440,
            1063235654, 1052733568, 1047437446, 1050632333, 1070588952, 1050633355, 1042126958, 1060084824,    4201449,
            1049581719, 1036824641, 1068488738,   11554747, 1048530081, 1032577024,    2103273,   19956622, 1034871952,
            6302662,   12605364, 1024372013,  997052479,       4081,   22058878, 1034876144,  983395349, 1068490781,
            1024373035, 1044330675, 1043281078, 1062187080, 1036976355, 1054833780, 1045380269, 1055883379, 1048532122,
            1065337909, 1046431908, 1044305017, 1061135442,    1051637, 1048532123, 1032716381, 1072691209,    5259183,
            1051680912, 1022184502,    3158971,   23109494, 1052730497, 1012705280,    5270380,   33612600, 1009679404,
            1071643651,   33614640, 1012818290, 1007578125, 1068489759, 1015968100, 1027522846, 1032775928, 1064288315,
            1030674694, 1041177803, 1038027994, 1060085845, 1046430888, 1054832760, 1043279036, 1056932975, 1062186059,
            1068488741, 1048531101, 1045367915,       4078,    1058767, 1053783165, 1029598282,      20364,    2121591,
            1060083804, 1018034217,      35626,    4232990, 1035941911, 1008569344,      49864,   47268578, 1052741636,
            1062189122,   15742861,   13645709, 1022271803, 1061136461,    4199385,    4200399, 1030674695, 1059036248,
            1066389547, 1069541398, 1039078611, 1057985633, 1053783165, 1059035229, 1048530078, 1057983591, 1041175761,
            1047479462, 1056933994, 1049579611, 1033729211, 1035898066, 1066386485, 1034870837, 1029429361, 1023202452,
            0, 1028568090, 1025159210, 1013680204,    8403919, 1024365568,    4201422, 1005227008, 1011766653,
            1051683971, 1070593034,    2103254, 1023322419, 1052734587, 1062187079, 1070594057, 1035925737, 1054834803,
            1052731525, 1063238716, 1047481503, 1056933993, 1043276996, 1055884399, 1060085846, 1060083804, 1026413744,
            1048529060, 1071640590, 1060084807, 1008491621, 1038014665,    1058754, 1048536093,  995844133, 1012747399,
            2118517, 1054836745, 1069543440,  993799234,   10490777, 1065337856, 1063239738,  980112384, 1072695281,
            1041178822, 1056936035, 1066392610, 1061137484, 1045381290, 1051680909, 1062189121, 1047479465, 1050632333,
            1045377207, 1056937057, 1032771846, 1055884399, 1024342180, 1052733569, 1017990412, 1062185038,  996993112,
            1048530081, 1005258913, 1068486697,  980164640, 1044326592,  996760621, 1072690178, 1059038291, 1009634425,
            1072695271,    6301662, 1055886440,  985455671, 1065340970,   12604345, 1052734590,  969686016, 1054835822,
            1029625099, 1050630292, 1054835822, 1045378228, 1038027993, 1047478441, 1052735610, 1034872059, 1046430886,
            1029613719, 1051683974, 1015926024, 1055883379,  993886280, 1050631313,  986426525, 1064287293,  978122777,
            1049579676,  964300842, 1073739782, 1048533141, 1048528038, 1063240758,    4205516, 1048533143, 1014912105,
            1055888482,   16807833, 1048532120,  989699115, 1049583760,   26260323, 1049580697,  977093632, 1043278015,
            1019119951, 1049580697, 1042231482, 1035924719, 1030674695, 1042227337, 1044330674, 1021204740, 1042229439,
            1002316854, 1046430889,  977034391, 1054833782,  992864273, 1047481504,  943379493, 1066388525, 1038029015,
            1050630293, 1050635395,    1055714, 1041179844, 1052730506, 1047483546,    4214675, 1045379248, 1030679639,
            1044330673,    7373636, 1048531100, 1007579164, 1041177802,   39916301, 1052731526, 1007579136, 1038024931,
            1007565204, 1056931952, 1029626119, 1034872061, 1023321397, 1021237282, 1034877161,  979180690, 1039077591,
            1027536904, 1040129227,  936095776, 1053784185, 1027523865, 1045380269, 1038031056, 1069539357, 1033826545,
            1051680909, 1039078609,      12221, 1041178824, 1056932972, 1039078610,      27483, 1048531102, 1056936005,
            1039077588,      42745, 1055883379, 1043291147, 1040125143,      56983, 1063235656, 1065338880, 1040124123,
            20989801, 1052743692, 1018069332,  994962571,    9447346,    2101237, 1026473249,  943497241, 1072692227,
            1017018716, 1034876141, 1026474267, 1060085844, 1027522845, 1043280057, 1030674695, 1047479463, 1038026974,
            1052732548, 1033826546, 1036937431, 1048530079, 1061136463, 1038026974, 1031576729, 1057985632, 1070588954,
            1041177803, 1026243664, 1068489761,    4202472, 1045377208, 1023029248,    1054689,   12605366, 1025428613,
            7350193,   14706601, 1005463970,  967682065,       3052, 1006513566, 1017019736, 1014918503, 1066390569,
            1020169545, 1029624078, 1022270780, 1056935014, 1033825524, 1042228420, 1028574482, 1048529061, 1047481504,
            1053784187, 1035926759, 1035907278, 1061137485, 1066387506, 1043279038, 1016926349,       2043,       5097,
            1050630293, 1002166343,      14243,    2113435, 1056932974,  990571520,      26443,   26261345, 1010747401,
            1070598140,   18880371,   16783217, 1002314162, 1066391589,    4197332,    5245892, 1012818289, 1060087886,
            1063238715, 1067442207, 1024370993, 1054832760, 1048529059, 1053784186, 1034875120, 1048529058, 1032769804,
            1040125143, 1045379249, 1040122053, 1022168334, 1026467126, 1054834803, 1009617024, 1018870947, 1011619032,
            1065336888,  988577853, 1016663087, 1001006184,          0,  972801024,    4197312,  992529408,          0,
            1060089928, 1069543438,    2100166,          0, 1056938078, 1057986653, 1070594057,          0, 1054834803,
            1046428846, 1060088908,          0, 1051681929, 1033822465, 1050631313,          0, 1048530079, 1015909642,
            1040125143,          0, 1046426803,  994793631, 1029618975,          0, 1010699377,  978957356, 1000122579,
            0,  985480241, 1068494862,  974835812,          0,  970767360, 1061138502,  956926976,          0,
            1048534164, 1052733567, 1066393631,          0, 1048533142, 1044328633, 1060088908,          0, 1048532119,
            1035922677, 1052735609,          0, 1049580697, 1016992006, 1046430887,          0, 1049580697,  980156570,
            1040126167,          0, 1050629272,  952791080, 1032771847,          0, 1021221984, 1056938076,  998066382,
            0,  997065763, 1051686014,  959155295,          0,  989713408, 1047481505,  933913600,          0,
            1035928801, 1042228420, 1051688056,          0, 1040128206, 1036974313, 1049583758,          0, 1043280058,
            1027514626, 1046431910,          0, 1046430886,  977057941, 1043279037,          0, 1050631313,  938164258,
            1040126166,          0, 1054831739, 1044333737, 1035923696,          0, 1042234446, 1043281077, 1005450441,
            0, 1023337492, 1042229442,  956062809,          0, 1032787968, 1040128207,  925588480,          0,
            1023323438, 1039075549, 1038031055,          0, 1030675717, 1036973292, 1039079632,          0, 1038026972,
            985497743, 1039078609,          0, 1044330675,  937174044, 1039078611,          0, 1051682953, 1032776950,
            1039077590,          0, 1059035230, 1034877164, 1040125145,          0, 1066387507, 1036976354, 1025420484,
            0, 1067441154, 1039076569,  967654483,          0,    6301665, 1040127185,  936144896,          0,
            1011766651, 1042226377, 1024374054,          0, 1022270780, 1007573128, 1028574481,          0, 1032774909,
            952967189, 1031726332,          0, 1043278014, 1020172609, 1035926760,          0, 1053782143, 1026473250,
            1039077588,          0, 1063237697, 1031724290, 1043278017,          0, 1073740802, 1036976355, 1046428847,
            0,    2108352, 1042228420,  994980939,          0,   18909068, 1047479462,  967682048,          0,
            999161289, 1046430849, 1010718076,          0, 1012817267,  986592269, 1018070354,          0, 1027521822,
            1008615820, 1025422631,          0, 1041177802, 1017020759, 1032774908,          0, 1054833782, 1026473249,
            1040127186,          0, 1068488740, 1034877164, 1046429865,          0,       8143, 1044328631, 1053782145,
            0,      20343, 1052732548, 1040138307,          0,      31519, 1061135443, 1023345664,          0,
            25173831, 1040146437,  997062099,          0,   11538338,  997060056, 1007566226,          0, 1071642632,
            1008616844, 1019118929,          0, 1055884399, 1021221184, 1029623056,          0, 1040125144, 1033825524,
            1040127184,          0, 1024364864, 1046429866, 1050631314,          0, 1019989210, 1057984610, 1060085845,
            0, 1017762922, 1069539357, 1070587932,          0, 1014526976,       6103,    5252068,          0,
            8393627,          0,          0,          0,       2022,          0,          0,          0, 1064289333,
            0,          0,          0, 1051682950,          0,          0,          0, 1040125143,          0,
            0,          0, 1027518762,          0,          0,          0, 1004297430,          0,          0,
            0,  986347622,          0,          0,          0,  972630016,          0,          0,          0,
            1070598131,          0,          0,          0, 1065340970,          0,          0,          0, 1056936035,
            0,          0,          0, 1048531100,          0,          0,          0, 1040125143,          0,
            0,          0, 1031719187,          0,          0,          0,  998044881,          0,          0,
            0,  965422178,          0,          0,          0,  943322112,          0,          0,          0,
            1059040332,          0,          0,          0, 1054835821,          0,          0,          0, 1049583759,
            0,          0,          0, 1044330674,          0,          0,          0, 1040126167,          0,
            0,          0, 1034872060,          0,          0,          0, 1000185036,          0,          0,
            0,  956035164,          0,          0,          0,  927652864,          0,          0,          0,
            1045383331,          0,          0,          0, 1044331695,          0,          0,          0, 1042230460,
            0,          0,          0, 1041178824,          0,          0,          0, 1040126166,          0,
            0,          0, 1038024932,          0,          0,          0, 1013862598,          0,          0,
            0,  960284758,          0,          0,          0,  928768000,          0,          0,          0,
            1031727354,          0,          0,          0, 1033826545,          0,          0,          0, 1035926759,
            0,          0,          0, 1038026974,          0,          0,          0, 1039077589,          0,
            0,          0, 1041176781,          0,          0,          0, 1040126145,          0,          0,
            0,  979219535,          0,          0,          0,  948766720,          0,          0,          0,
            1018070353,          0,          0,          0, 1023322417,          0,          0,          0, 1028574482,
            0,          0,          0, 1033826546,          0,          0,          0, 1039078611,          0,
            0,          0, 1045378229,          0,          0,          0, 1050629272,          0,          0,
            0, 1014937671,          0,          0,          0,  991842304,          0,          0,          0,
            1004414375,          0,          0,          0, 1012818290,          0,          0,          0, 1022270780,
            0,          0,          0, 1030674694,          0,          0,          0, 1040127185,          0,
            0,          0, 1048531101,          0,          0,          0, 1056933995,          0,          0,
            0, 1065335867,          0,          0,          0, 1062192128,          0,          0,          0,
            990758398,          0,          0,          0, 1003362738,          0,          0,          0, 1014918502,
            0,          0,          0, 1027523866,          0,          0,          0, 1040128207,          0,
            0,          0, 1051682950,          0,          0,          0, 1063237695,          0,          0,
            0,       2044,          0,          0,          0,      10161,          0,          0,          0,
        }
    },
};


#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif /* End of #ifdef __cplusplus */


#endif /* __imx214_CMOS_EX_H_ */
